Skip to content

Освоение строковых функций Python

Пересказ статьи Syed Hamed Raza. Mastering Python String Functions


Python, универсальный и мощный язык программирования, обладает богатым набором функций для манипуляции строками. Строки являются фундаментальным типом данных, представляющих собой последовательность символов. Понимание и владение строковыми функциями Python является ключом для эффективной обработки текста, манипуляции данными и общих навыков программирования. В этом руководстве мы рассмотрим различные строковые функции и их применение.

1. Базовые операции со строками


1.1 Конкатенация


Одной из наиболее востребованных операций со строками является конкатенация. Python позволяет соединять две и более строк с помощью оператора +.

str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result)

Hello World

Continue reading "Освоение строковых функций Python"

MySQL INTO OUTFILE против INTO DUMPFILE

Пересказ статьи Chad Callihan. MySQL INTO OUTFILE vs. INTO DUMPFILE


Я еще не писал о MySQL, так что настало время несколько разнообразить блог.

Есть пара разных способов экспорта данных с помощью запроса SELECT в MySQL: INTO OUTFILE и INTO DUMPFILE. Давайте используем образец базы данных Sakila в MySQL и проделаем несколько примеров, чтобы сравнить эти два варианта.
Continue reading "MySQL INTO OUTFILE против INTO DUMPFILE"

Новости за 2025-02-01 - 2025-02-07

§ Популярные темы недели на форуме

Топик		Сообщений	Просмотров
238 (SELECT) 4 4
5 (SELECT) 3 3
16 (Learn) 2 23
17 (Learn) 2 13
235 (SELECT) 2 4

§ Авторы недели на форуме

Автор		Сообщений
pegoopik 6
DanRev 3
lutik 2
selber 2
Gambit87 2
Continue reading "Новости за 2025-02-01 - 2025-02-07"

Загляните в хэш запроса (query_id) в PostgreSQL

Пересказ статьи Virender Singla. Peek into Query Hash (query_id) in PostgreSQL


PostgreSQL имеет расширение с именем pg_stat_statements для отслеживания топовых SQL-запросов, которое издавна содержит столбцы queryid и query. Но pg_stat_activity приобрело столбец query_id, только начиная с версии PostgreSQL 14.

pg_stat_statements не захватывает выполняющиеся запросы SQL, а запросы нормализуются (удаляются константы и жестко закодированные значения) перед сохранением. Это означает, что SELECT pg_sleep(10); и SELECT pg_sleep(20); будут иметь единственную запись в виде SELECT pg_sleep($1);.

Вы видели когда-нибудь, чтобы в pg_stat_statements было две записи для одних и тех же query, userid, dbid, но с разными queryid?
Continue reading "Загляните в хэш запроса (query_id) в PostgreSQL"

Имеет ли значение порядок в GROUP BY?

Пересказ статьи Brent Ozar. Does Your GROUP BY Order Matter?


Иногда, когда вы используете GROUP BY, порядок столбцов имеет значение. Например, эти два запроса SELECT дают разные результаты:

CREATE INDEX Location_DisplayName
ON dbo.Users(Location, DisplayName);

SELECT TOP 100 Location, DisplayName, COUNT(*) AS Duplicates
FROM dbo.Users
GROUP BY Location, DisplayName
ORDER BY Location, DisplayName;

SELECT TOP 100 DisplayName, Location, COUNT(*) AS Duplicates
FROM dbo.Users
GROUP BY DisplayName, Location
ORDER BY DisplayName, Location;

Их действительные планы выполнения существенно разнятся:

Continue reading "Имеет ли значение порядок в GROUP BY?"

Новости за 2025-01-25 - 2025-01-31

§ Претенденты на попадание в TOP 100

Рейтинг	 Участник (решенные задачи, время в днях)
218 curiouser (102, 60.864)
223 __Sai (114, 368.421)
268 lea_22 (93, 2999.637)
286 wad881988 (68, 7.903)
314 Evgenishka (91, 561.696)
362 Sa1avat (78, 25.970)

Continue reading "Новости за 2025-01-25 - 2025-01-31"

Все, что вам нужно знать об индексе в SQL Server

Пересказ статьи Lorenzo Uriel. Everything you Need to Know About Index in SQL Server





Цель настоящей статьи - рассказать просто об индексах в SQL Server, объяснив фундаментальные понятия и предложив практические советы по обслуживанию.

Я обязуюсь обеспечить легкое и быстрое чтение, упрощающее понимание этого важного аспекта в области баз данных и управлении запросами.

Темы


  • Обзор индексов

  • Типы индексов в SQL Server
    • Кластеризованные индексы.

    • Некластеризованные индексы.

    • Поколоночный и построчный индексы.

  • Фрагментация индексов
    • Внутренняя и внешняя.

    • Перестройка и реорганизация.

Continue reading "Все, что вам нужно знать об индексе в SQL Server"

Принудительное использование планировщиком запросов Postgres правильного индекса с помощью OFFSET 0

Пересказ статьи Julien Van Beveren. Forcing the Postgres query planner into using the correct index using OFFSET 0


MySQL имеет возможность применять хинт USE INDEX для указания, какие индексы использовать при выполнении конкретного запроса. PostgreSQL не имеет такой особенности, полагая, что он лучше знает, когда и какие индексы использовать.

Перед выполнением запроса PostgreSQL строит "план". Это сложный процесс, который я хотел бы понимать досконально, но планировщик запросов главным образом смотрит на существующие индексы, распределение данных и фильтры запроса, чтобы найти различные способы вернуть затребованные вами данные. Затем он оценивает "стоимость" каждой операции и выполняет "самый дешевый" план. Это работает отлично до тех пор, пока не...
Continue reading "Принудительное использование планировщиком запросов Postgres правильного индекса с помощью OFFSET 0"

Вставка столбца в середину таблицы

Пересказ статьи Steve Jones. Friday Flyway Tips – Inserting Column in the Middle of a Table


Заказчик мне задал вопрос, может ли Flyway Desktop (FWD) вызвать проблемы, если разработчики добавили столбцы в середину таблицы. Это обоснованное беспокойство, и данная статья показывает, что FWD не вызывает проблем, даже если ваши разработчики глупят.

Если только они не захотят это сделать специально.

Я много работал с Flyway Desktop с тех пор, как мы перешли с устаревших плагинов для SSMS на автономный инструмент.

Сценарий


Представим, что у вас есть подобная таблица с несколькими столбцами.

CREATE TABLE Product
( ProductID INT NOT NULL CONSTRAINT ProductPK PRIMARY KEY
, ProductName VARCHAR(50)
, ProductDesc VARCHAR(1000)
, ProductSize CHAR(1)
, ProductWeight INT
, ProductColor VARCHAR(20)
, StatusID int
)
GO

Эта таблица имеет одинаковую структуру на сервере разработки и на продакшене, и мне нужно добавить новый столбец. Нам необходимо знать количество в упаковке, поскольку у новых товаров в коробке содержится несколько штук, так что необходимо добавить в таблицу столбец ProductQtyPerUnit.

Continue reading "Вставка столбца в середину таблицы"

Новости за 2025-01-18 - 2025-01-24

§ Лидеры недели

	Участник		w_sel	all_sel	select	dml	Всего	Рейтинг
Новиков С.В. (@Ser589QA) 18 56 30 0 30 894
Chuvstvin M. (chuvstvinmaxim) 5 144 12 0 12 112
Bulyakarov S. (Sa1avat) 4 70 11 0 11 422
Ikramov R. (ARNET) 5 74 8 19 27 459
Хохлов А.В. (rald6839) 6 63 8 6 14 731
Ivanov A. (aiwannafly7) 4 4 6 7 13 5626
Корнеева Е. (Evgenishka) 2 88 4 0 4 332
Турласов Е.Х. (lilyanchik) 3 3 4 0 4 9073
Continue reading "Новости за 2025-01-18 - 2025-01-24"

Сравнение производительности TOP и MAX

Пересказ статьи Andy Brownsword. Comparing Performance of TOP vs. MAX


Как TOP(1), так и MAX могут использоваться для нахождения наибольшего значения в наборе данных. Хотя они приводят к одному и тому же результату, но делают это разными способами.

Для начала разберемся, в чем разница между ними?

Предложение TOP ограничивает число результатов, возвращаемых запросом; тут мы рассматриваем единственный результат. При использовании MAX, напротив, мы применяем функцию к нашим данным, чтобы выбрать из них максимальное значение.

Давайте перейдем к нескольким примерам с данными StackOverflow, а конкретно таблицы Votes.

Continue reading "Сравнение производительности TOP и MAX"

Преобразование Oracle PL/SQL в PostgreSQL PL/pgSQL

Пересказ статьи Bitnine Global. Converting Oracle PL/SQL to PostgreSQL PL/pgSQL


Добро пожаловать в мир программирования баз данных, в котором языки Oracle PL/SQL и PostgreSQL PL/pgSQL помогают привнести структуру и логику в данные. Эти процедурные языки являются основой внедрения бизнес-правил и манипуляции данными в сами базы данных, играя важную роль в администрировании баз данных.

Оба языка предоставляют возможность использовать переменные, операторы управления типа IF, CASE и LOOP, а также управлять исключениями - инструменты, необходимые для адаптивных и динамичных процедур работы с базами данных. Когда бы вы ни создавали новые функции или выполняли сложные процедуры, синтаксис CREATE PROCEDURE и CREATE FUNCTION станет частью вашего стандартного инструментария.

По мере того, как мы погружаемся в процесс преобразования из Oracle PL/SQL в PostgreSQL PL/pgSQL, мы будем открывать важные детали, необходимые для гладкого перехода.
Continue reading "Преобразование Oracle PL/SQL в PostgreSQL PL/pgSQL"

Краткое руководство по PostgreSQL CLI

Пересказ статьи Kasper Junge. A Brief Guide to the PostgreSQL CLI


Использование интерфейса командной строки PostgreSQL (CLI) в первую очередь включает взаимодействие с двумя главными утилитами: psql, интерактивный терминал для работы с PostgreSQL, и различные инструменты командной строки типа pg_dump для резервных копий базы данных. Вот руководство, с которого можно начать:

Начнем с psql


Доступ к CLI:


  • Откройте ваш интерфейс командной строки (терминал на Linux/macOS, командную строку или PowerShell на Windows

  • Наберите psql -U [имя пользователя] -d [база данных] для подключения к вашей базе данных PostgreSQL. Замените [имя пользователя] на имя реального пользователя PostgreSQL, а [база данных] - на имя базы данных.

  • Вам может потребоваться указать хост (-h [хост]) и порт (-p [порт]), если ваша база не находится на локальном севере и не использует порт по умолчанию.

Continue reading "Краткое руководство по PostgreSQL CLI"

Новости за 2025-01-11 - 2025-01-17

§ Лидеры недели

	Участник		w_sel	all_sel	select	dml	Всего	Рейтинг
Макаров И.А. (_Bkmz_) 3 142 9 0 9 93
Суханов Я. (Yaroslav19981) 6 9 9 0 9 3491
Якшин И.В. (ivan_y) 2 105 7 0 7 280
Chuvstvin M. (chuvstvinmaxim) 1 139 4 0 4 136
Кулемзин Н.Е. (Bulochka_c_izu 2 131 4 0 4 137
Continue reading "Новости за 2025-01-11 - 2025-01-17"

Пошаговая инструкция восстановления базы данных PostgreSQL из файла дампа SQL

Пересказ статьи Victor Magallanes. A Step-by-Step Guide: Restoring a PostgreSQL Database from a Dump SQL File


PostgreSQL является мощной системой управления реляционными базами данных с открытыми кодами, широко используемой для хранения и управления данными в различных приложениях. Иногда вам необходимо восстановить базу данных PostgreSQL из файла дампа SQL в случаях повреждения в результате сбоя, переноса или тестирования. В этой статье мы представим полное руководство по восстановлению базы данных PostgreSQL из файла дампа SQL, описав необходимые шаги и лучшую практику.

Понятие файлов дампа базы данных


Прежде чем перейти к процессу восстановления, давайте разберемся с тем, что представляет собой файл дампа базы данных. Дамп базы данных - это файл, содержащий снимок схемы базы данных и данных на конкретный момент времени. Этот файл обычно генерируется утилитой pg_dump, входящей в пакет PostgreSQL, и содержит команды SQL для воссоздания структуры базы данных и вставки в нее данных.
Continue reading "Пошаговая инструкция восстановления базы данных PostgreSQL из файла дампа SQL"