15+ промтов для ускорения SQL: как заставить PostgreSQL и MySQL летать

Вы когда-нибудь ждали ответ от базы данных дольше, чем заваривается кофе? Если да — эта подборка для вас. Я собрал промты, которые ежедневно использую в работе, чтобы находить узкие места, анализировать планы запросов и выжимать максимум из PostgreSQL и MySQL. Никакой воды — только проверенные формулировки, которые реально экономят часы.

Почему промты для SQL — это must-have

Даже опытные разработчики тратят до 30% времени на оптимизацию запросов (по данным исследования Percona). Промты позволяют делегировать рутину нейросети: объяснить EXPLAIN, сгенерировать индекс, найти антипаттерн. Главное — правильно сформулировать задачу.

Промт 1: Анализ плана выполнения в PostgreSQL

Ты — эксперт по PostgreSQL. Вот результат EXPLAIN ANALYZE для запроса:
<вставьте вывод>
Найди узкие места: сканы, сортировки, вложенные циклы. Предложи конкретные исправления — индексы, переписывание, настройку параметров. Ответь по пунктам.

Пример: Я скормил промту вывод EXPLAIN для запроса с JOIN по трём таблицам. Нейросеть сразу указала на Seq Scan на таблице orders и предложила индекс по внешнему ключу. После добавления индекса время запроса упало с 800 мс до 12 мс.

Промт 2: Генерация индексов по схеме

Вот схема таблиц (CREATE TABLE statements): <вставьте>
Предложи набор индексов для типичных запросов: поиск по внешним ключам, сортировка, фильтры по дате. Для каждого индекса объясни, почему он нужен и какие запросы ускорит.

Как использовать: Отлично работает для новых проектов. Нейросеть учтёт типы данных и сгенерирует индексы, которые вы бы создали сами, но быстрее.

Промт 3: Поиск медленных запросов в логах PostgreSQL

Вот фрагмент лога медленных запросов PostgreSQL:
<вставьте>
Проанализируй, какие запросы повторяются чаще всего. Определи причины медлительности (отсутствие индексов, неоптимальные JOIN, лишние данные). Предложи план оптимизации по приоритету.

Совет: Включите log_min_duration_statement = 1000 в postgresql.conf, чтобы логировать запросы дольше секунды.

Промт 4: Рефакторинг медленного запроса в MySQL

У меня есть запрос, который выполняется 15 секунд на MySQL 8. Вот его текст и EXPLAIN:
<вставьте>
Перепиши запрос так, чтобы он использовал индексы и избегал временных таблиц. Объясни каждое изменение.

Реальный кейс: Запрос с подзапросом в SELECT и GROUP BY на 2 млн строк. Нейросеть предложила заменить подзапрос на JOIN и добавить составной индекс (user_id, created_at). Скорость выросла в 40 раз.

Промт 5: Сравнение планов PostgreSQL и MySQL

Вот один и тот же запрос и его EXPLAIN в PostgreSQL и MySQL:
<вставьте>
Сравни планы. Где эффективнее используется индекс? Какие различия в оптимизаторе влияют на производительность? Дай рекомендации для каждой СУБД.

Полезно при миграции с одной БД на другую.

Промт 6: Выявление антипаттернов в SQL

Проанализируй этот SQL-код на антипаттерны: SELECT *, отсутствие LIMIT, функции в WHERE, неявные преобразования типов. Предложи исправления.
<вставьте код>

Пример: Нейросеть нашла WHERE YEAR(created_at) = 2026 — это убивает индекс. Заменила на WHERE created_at >= '2026-01-01' AND created_at < '2027-01-01'.

Промт 7: Оптимизация запросов с оконными функциями

Вот запрос с оконной функцией ROW_NUMBER() для пагинации:
<вставьте>
Оптимизируй его: добавь индексы, перепиши, если возможно, на более эффективную конструкцию. Объясни.

Оконные функции часто тормозят на больших таблицах. Промт помогает найти альтернативы.

Промт 8: Профилирование MySQL с SHOW PROFILE

Вот вывод SHOW PROFILE для медленного запроса:
<вставьте>
Определи, на каком этапе больше всего времени (Sending data, Sorting, Copying to tmp table). Предложи оптимизацию.

Важно: SHOW PROFILE устарел в MySQL 8.0, но всё ещё работает. Для новых версий используйте Performance Schema.

Промт 9: Настройка pg_stat_statements

Вот топ-10 запросов из pg_stat_statements по общему времени:
<вставьте>
Проанализируй, какие запросы стоит оптимизировать в первую очередь. Для каждого дай рекомендации: индексы, переписывание, кэширование.

Промт 10: Генерация тестовых данных для оптимизации

Сгенерируй SQL для вставки 1 млн тестовых записей в таблицу users с реалистичными данными (имена, email, даты). Учти индексы и внешние ключи.

Как использовать: Заполните базу, чтобы проверить гипотезы оптимизации на реалистичном объёме.

Промт 11: Объяснение EXPLAIN для новичка

Объясни этот план выполнения простыми словами, как будто я новичок. Что такое Seq Scan, Index Scan, Nested Loop? Почему запрос медленный?
<вставьте EXPLAIN>

Полезно для обучения команды.

Промт 12: Оптимизация JOIN-запросов

Вот запрос с JOIN по 4 таблицам:
<вставьте>
Предложи индексы для внешних ключей и перепиши запрос, если нужно. Объясни, как оптимизатор выбирает порядок соединения.

Промт 13: Автоматизация анализа логов MySQL

Вот лог медленных запросов MySQL (slow_query_log):
<вставьте>
Сгруппируй запросы по паттернам, найди самые частые. Предложи индексы и настройки.

Промт 14: Оптимизация запросов с подзапросами

Перепиши этот запрос, заменив подзапросы на JOIN или CTE. Объясни, почему новый вариант быстрее.
<вставьте запрос>

Кейс: Подзапрос в WHERE с NOT IN на 100k строк. Замена на LEFT JOIN с IS NULL ускорила запрос в 3 раза.

Промт 15: Проверка покрывающих индексов

Вот таблица и запрос, который выбирает только поля name и email:
<вставьте>
Создай покрывающий индекс, чтобы запрос не обращался к таблице. Объясни, когда это оправдано.

Промт 16: Сравнение производительности до и после

Вот результаты EXPLAIN до и после изменений:
<вставьте>
Сравни, что улучшилось, а что стало хуже. Есть ли регресс? Что ещё можно оптимизировать?

Финальные мысли

Эти промты — не магия, а инструмент. Они экономят часы, но не заменяют понимания SQL. Используйте их как умного ассистента: проверяйте предложения, тестируйте на своих данных. Начните с промта 1 — он даст быстрый результат. А если хотите прокачаться в SQL — читайте документацию PostgreSQL и MySQL, экспериментируйте. База данных — это как шахматы: выигрывает тот, кто думает на несколько ходов вперёд.

← Все статьи

Комментарии

Читайте также

От пропсов до мемоизации: как ИИ пишет React-компоненты, которые не стыдно показать код-ревью

27 августа 2026

SQL-запросы как ракета: 15 промтов для отладки, оптимизации и проектирования баз данных

26 августа 2026

Как превратить ChatGPT в личного репетитора английского: 18 промтов, которые реально работают

26 августа 2026

Мультимодальный ИИ в деле: 15 промтов, которые превращают текст, картинки и видео в рабочие проекты

26 августа 2026

Легаси-код и ИИ: 10 промтов, которые превращают «болото» в чистую архитектуру

26 августа 2026

SQL-запросы и PostgreSQL: как ИИ превращает рутину в магию — 15 промтов для разработчика и аналитика

26 августа 2026

15 промтов для Excel и Google Sheets, которые превратят ваш хаос в чистую аналитику

26 августа 2026

От прототипа до продакшена за вечер: как собрать лендинг на промтах и не сойти с ума

25 августа 2026

SQL и NoSQL под контролем: 10 промтов, которые заменят DBA, если вы разработчик

25 августа 2026