15 промтов ChatGPT для работы с базами данных: от быстрых запросов до грамотных миграций

Вы когда-нибудь тратили часы на отладку медленного SQL-запроса, который «работал вчера»? Или пытались вспомнить синтаксис оконных функций, пока прод моргает красным? Если да — эта подборка для вас. Я собрал 15 конкретных промтов, которые ежедневно использую как аналитик и бэкенд-разработчик. Они превращают ChatGPT в наставника по базам данных: от генерации сложных запросов до оптимизации через EXPLAIN. Никакой абстрактной теории — только готовые к копипасту формулы и реальные примеры.

1. Генерация сложного SQL по описанию задачи

Задача: Быстро получить рабочий SQL-запрос, когда вы знаете, что нужно, но не хотите писать с нуля.

Промт:

Ты — эксперт по SQL для PostgreSQL. Напиши запрос, который [описание задачи].
Учитывай: [структура таблиц, связи, условия].
Используй [CTE, оконные функции, джойны].
Верни только SQL-код без пояснений.

Пример:

«Напиши запрос, который выводит топ-5 клиентов по сумме заказов за последний месяц. Таблицы: customers(id, name), orders(id, customer_id, amount, created_at). Используй CTE и оконные функции.»

Результат: ChatGPT вернет оптимизированный запрос с EXPLAIN-планом и пояснениями, если попросить.

2. Оптимизация медленного запроса с помощью EXPLAIN

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

Промт:

Вот результат EXPLAIN ANALYZE для запроса: [вставьте вывод].
Запрос: [ваш запрос].
Объясни, какие операции самые дорогие, и предложи конкретные улучшения: индексы, переписывание, изменение схемы.
Дай исправленную версию запроса.

Пример: Вы вставляете вывод EXPLAIN ANALYZE с Seq Scan на таблице в 10 млн строк. ChatGPT подскажет создать индекс и покажет, как изменится план.

3. Проектирование схемы базы данных с нуля

Задача: Сгенерировать нормализованную схему для нового проекта.

Промт:

Спроектируй схему БД для [описание проекта: сущности, связи, требования].
Используй третий нормальный вид. Для каждой таблицы укажи поля, типы, первичные и внешние ключи, индексы.
Дай DDL-скрипт для PostgreSQL.

Пример: Вы описываете интернет-магазин с товарами, заказами и пользователями. ChatGPT предложит таблицы customers, products, orders, order_items с правильными связями.

4. Написание миграций для изменений схемы

Задача: Создать безопасную миграцию, которая не сломает прод.

Промт:

Напиши SQL-миграцию для PostgreSQL, которая [что нужно изменить: добавить колонку, изменить тип, создать индекс].
Учти: [ограничения, дефолтные значения, обратную совместимость].
Дай код миграции и код отката (rollback).

Пример: Добавление колонки email_verified с дефолтом false и создание частичного индекса.

5. Объяснение разницы между JOIN-ами

Задача: Быстро освежить память или объяснить коллеге.

Промт:

Объясни разницу между INNER JOIN, LEFT JOIN, RIGHT JOIN и FULL OUTER JOIN на примере двух таблиц: employees(id, name, dept_id) и departments(id, name).
Покажи результат для каждого типа с примером данных.
Дай SQL-запросы и вывод.

Пример: ChatGPT создаст наглядные таблицы с результатами для каждого JOIN.

6. Использование оконных функций для аналитики

Задача: Рассчитать скользящее среднее, ранжирование или накопительные итоги.

Промт:

Используя оконные функции PostgreSQL, напиши запрос, который [задача: скользящее среднее продаж за 7 дней, ранг продуктов по выручке].
Покажи пример с данными и объясни, как работает каждая функция: ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, SUM OVER.

Пример: ChatGPT сгенерирует запрос с SUM(amount) OVER (PARTITION BY ... ORDER BY date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW).

7. Обработка NULL-значений без ошибок

Задача: Написать запрос, который корректно обрабатывает NULL.

Промт:

Напиши SQL-запрос для [задача], который корректно обрабатывает NULL-значения в колонках [перечислить].
Используй COALESCE, NULLIF, IS NULL. Объясни, как избежать типичных ошибок с NULL в агрегациях.

Пример: Запрос, который считает средний чек, игнорируя NULL в discount, и показывает клиентов без телефона.

8. Диагностика блокировок и взаимоблокировок

Задача: Найти и устранить блокировки в PostgreSQL.

Промт:

Вот вывод pg_stat_activity: [вставьте].
Найди заблокированные процессы и объясни, что делать.
Напиши запросы для поиска блокировок, которые держатся дольше 5 минут.
Дай рекомендации по настройке lock_timeout и deadlock_timeout.

Пример: ChatGPT предложит запрос с pg_locks и pg_stat_activity для выявления блокировок.

9. Написание индексов для ускорения запросов

Задача: Подобрать оптимальные индексы.

Промт:

Для таблицы [имя] с колонками [перечислить] и частыми запросами [привести примеры] предложи индексы.
Объясни, почему B-tree, GIN или BRIN подходят для каждого случая.
Дай команды CREATE INDEX.

Пример: Для JSONB-колонки ChatGPT предложит GIN-индекс, для временных рядов — BRIN.

10. Профилирование запросов с помощью pg_stat_statements

Задача: Найти самые медленные запросы в проде.

Промт:

Напиши SQL-запрос к pg_stat_statements, который показывает топ-10 запросов по времени выполнения и количеству вызовов.
Объясни, как интерпретировать результаты и что делать с проблемными запросами.

Пример: ChatGPT вернет запрос с сортировкой по total_time и предложит оптимизировать конкретные query.

11. Генерация тестовых данных для проверки запросов

Задача: Наполнить таблицу синтетическими данными.

Промт:

Сгенерируй SQL-скрипт для вставки 1000 тестовых записей в таблицу [имя] с полями [перечислить].
Используй generate_series, random() и другие функции PostgreSQL.
Данные должны быть реалистичными (имена, даты, числа).

Пример: ChatGPT создаст скрипт с 1000 пользователей со случайными именами и датами регистрации.

12. Написание запросов для аналитики в ClickHouse

Задача: Адаптировать опыт SQL для ClickHouse.

Промт:

Напиши запрос ClickHouse для [задача: агрегация по времени, поиск аномалий].
Учти особенности: материализованные представления, секционирование, функции для работы с DateTime.
Объясни отличия от PostgreSQL, если они есть.

Пример: ChatGPT сгенерирует запрос с toStartOfDay и quantile для анализа метрик.

13. Рефакторинг сложного запроса с помощью CTE

Задача: Упростить запутанный запрос.

Промт:

Вот запутанный запрос: [вставьте].
Перепиши его с использованием CTE (WITH) для улучшения читаемости.
Сохрани логику. Объясни, что делает каждый CTE.

Пример: ChatGPT разобьет запрос на логические блоки, облегчая поддержку.

14. Поиск и удаление дубликатов в данных

Задача: Найти и удалить дублирующиеся записи.

Промт:

Напиши запрос для поиска дубликатов в таблице [имя] по полям [перечислить].
Покажи, как оставить только одну запись (например, с минимальным id).
Дай безопасный способ удаления дубликатов без блокировки таблицы.

Пример: ChatGPT предложит CTE с ROW_NUMBER() и DELETE с подзапросом.

15. Обучение написанию безопасных запросов с параметризацией

Задача: Избежать SQL-инъекций.

Промт:

Покажи, как переписать этот уязвимый запрос на Python/Node.js с использованием параметризованных запросов: [вставьте код].
Объясни, почему это важно, и приведи пример безопасного кода.

Пример: ChatGPT покажет использование %s в psycopg2 или ? в mysql2.

Что дальше?

Эти промты — не магическая таблетка, а инструмент для ускорения рутины. Лучший способ освоить их — применять на своих данных. Начните с простого: возьмите один медленный запрос из прода и спросите у ChatGPT, что не так. Через неделю вы заметите, что тратите на SQL вдвое меньше времени.

А если вы хотите системно прокачать навыки работы с базами данных — загляните в блог ASI Biont: там мы разбираем реальные кейсы оптимизации и автоматизации аналитики. Подпишитесь, чтобы не пропустить новые материалы!

← Все статьи

Комментарии

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

Зарплаты в DevOps и облаке 2026: анализ рынка, навыки и как повысить свой потенциал заработка

4 сентября 2026

Фриланс — работа на себя: ваше руководство на 2026 год по привлечению международных клиентов

4 сентября 2026

Возобновляемая энергия — чистые энергетические и зеленые технологии: руководство по карьере в зеленом переходе

4 сентября 2026

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

4 сентября 2026

Валютное право 2026: тренды, прогнозы и как юристу остаться востребованным

4 сентября 2026

Мягкие навыки и карьера: Практический пример тайм-менеджмента и постановки целей от проект-менеджера

4 сентября 2026

PostgreSQL без рутины: 12 промтов, которые превратят оптимизацию БД в увлекательный квест

4 сентября 2026

12 промтов для MongoDB: от гибких схем до агрегаций и тонкой настройки запросов

4 сентября 2026

Platform Engineering — внутренние developer-платформы: как построить IDP и зачем вам этот курс

4 сентября 2026