SQL на 70% быстрее: наш арсенал промтов для баз данных

Мы — команда ASI Biont. Как и многие, мы тонули в рутине: однотипные SQL-запросы, отчёты, выгрузки. Каждый запрос — это часы работы, особенно когда данных много, а дедлайны горят. Но однажды мы решили попробовать делегировать часть этой работы нейросетям. Результат превзошёл ожидания: время на написание и оптимизацию запросов сократилось на 70%. В этой статье я поделюсь нашим арсеналом промтов — готовых шаблонов, которые вы можете скопировать и использовать прямо сейчас.

Мы не будем рассказывать о волшебных таблетках. Вместо этого — конкретные примеры, проверенные на реальных задачах. Каждый промт решает определённую проблему: от генерации отчётов до оптимизации медленных запросов. Вы узнаете, как заставить нейросеть писать корректный SQL, объяснять сложные запросы и даже генерировать тестовые данные. Поехали!

1. Промт «Перевод с человеческого на SQL»

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

Промт:

Ты — эксперт по SQL и базам данных. Переведи следующее описание задачи в SQL-запрос. Учитывай синтаксис PostgreSQL. Если в описании есть неоднозначности, задай уточняющие вопросы. Верни только SQL-код без пояснений.

Описание: {опишите задачу здесь}

Пример использования:
Допустим, нам нужно получить список клиентов, сделавших заказы за последний месяц, вместе с суммой их покупок. Вставляем описание в промт:

Описание: Покажи имена клиентов и общую сумму их заказов за последний месяц, отсортированных по сумме убыванию.

Нейросеть вернёт что-то вроде:

SELECT c.name, SUM(o.amount) AS total_spent
FROM customers c
JOIN orders o ON c.id = o.customer_id
WHERE o.created_at >= NOW() - INTERVAL '1 month'
GROUP BY c.name
ORDER BY total_spent DESC;

Результат: мы экономим 15–20 минут на каждом простом запросе, особенно когда нужно быстро проверить гипотезу или сделать выгрузку для отчёта.

2. Промт «Оптимизация медленного запроса»

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

Промт:

Ты — опытный DBA. Проанализируй следующий SQL-запрос и предложи оптимизации. Учитывай использование индексов, подзапросов, JOIN'ов. Объясни, какие изменения помогут ускорить выполнение, и покажи исправленный запрос. Если нужно, предложи создать дополнительные индексы.

Запрос: {вставьте ваш запрос}

Пример: у нас был запрос, который выполнялся 5 секунд из-за вложенного подзапроса. Нейросеть предложила использовать JOIN вместо подзапроса и добавить индекс на поле status:

-- Было (5 сек)
SELECT * FROM orders WHERE customer_id IN (SELECT id FROM customers WHERE status = 'active');

-- Стало (0.5 сек)
SELECT o.* FROM orders o JOIN customers c ON o.customer_id = c.id WHERE c.status = 'active';
CREATE INDEX idx_customers_status ON customers(status);

Результат: время выполнения сократилось в 10 раз. Кстати, по данным PostgreSQL Wiki, использование JOIN вместо IN-подзапросов часто даёт значительный выигрыш.

3. Промт «Объяснение сложного запроса»

Когда использовать: когда вы получили SQL-запрос от коллеги или из старого кода и не понимаете, что он делает.

Промт:

Ты — SQL-эксперт. Объясни, что делает следующий запрос, простыми словами. Разбей на шаги, поясни назначение каждой части. Если в запросе есть потенциальные проблемы (например, декартово произведение), укажи на них.

Запрос: {вставьте запрос}

Пример: Наш коллега написал сложный запрос с несколькими CTE и оконными функциями. Вместо того чтобы разбираться час, мы скормили его нейросети. Она объяснила, что запрос вычисляет скользящее среднее продаж по дням и отфильтровывает дни с аномалиями. Это сэкономило нам время и помогло понять логику.

4. Промт «Генерация тестовых данных»

Когда использовать: когда нужно заполнить базу данных тестовыми данными для разработки или тестирования.

Промт:

Ты — генератор тестовых данных. Создай SQL-скрипт для вставки {количество} записей в таблицу {имя таблицы} со следующими полями: {перечислите поля}. Используй реалистичные данные (имена, даты, числа). Учитывай ограничения (NULL, UNIQUE, FK). Верни только SQL.

Пример: Нам нужно 1000 тестовых заказов для таблицы orders с полями id, customer_id, amount, created_at. Промт:

Создай SQL-скрипт для вставки 1000 записей в таблицу orders с полями id (serial), customer_id (integer, от 1 до 500), amount (numeric, от 10 до 1000), created_at (timestamp, за последний год).

Нейросеть сгенерировала скрипт с использованием generate_series и случайных чисел. Это сэкономило нам часы ручной работы.

5. Промт «Написание функции или процедуры»

Когда использовать: когда нужна функция на PL/pgSQL для повторяющегося действия.

Промт:

Ты — разработчик PostgreSQL. Напиши функцию (или процедуру) на PL/pgSQL, которая {опишите задачу}. Учитывай обработку ошибок и производительность. Верни код функции с комментариями.

Пример: Нам нужна функция, которая обновляет дату последней активности пользователя. Промт:

Напиши функцию update_last_active(user_id integer), которая обновляет поле last_active в таблице users на текущую метку времени.

Нейросеть вернула готовую функцию с BEGIN ... END;. Мы просто вставили её в миграцию.

6. Промт «Анализ плана выполнения»

Когда использовать: когда нужно понять, почему запрос медленный, и что говорит EXPLAIN.

Промт:

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

EXPLAIN ANALYZE результат: {вставьте вывод}

Пример: Мы вставили вывод EXPLAIN ANALYZE для нашего медленного запроса. Нейросеть заметила, что используется Seq Scan на большой таблице, и предложила добавить индекс. После добавления индекса время выполнения упало с 3 секунд до 0.1 секунды.

7. Промт «Сравнение двух SQL-запросов»

Когда использовать: когда вы не уверены, какой из двух вариантов запроса эффективнее.

Промт:

Сравни два SQL-запроса. Оцени их производительность, читаемость и корректность. Какой из них лучше и почему? Если можно улучшить, предложи третий вариант.

Запрос 1: {текст}
Запрос 2: {текст}

Пример: У нас было два варианта выборки последних заказов: через оконную функцию и через подзапрос с LIMIT. Нейросеть объяснила, что оконная функция более гибкая, но в данном случае подзапрос быстрее из-за меньшего объёма данных. Мы выбрали подзапрос.

8. Промт «Генерация отчёта по данным»

Когда использовать: когда нужно получить сводную информацию в виде отчёта (например, продажи по месяцам).

Промт:

Ты — аналитик данных. Напиши SQL-запрос для получения следующего отчёта: {опишите отчёт}. Используй группировки, агрегатные функции, сортировку. Если нужно, добавь комментарии к запросу.

Пример: Отчёт: продажи по категориям товаров за последний квартал. Промт:

Напиши SQL-запрос для получения суммы продаж по категориям товаров за последний квартал, отсортированный по сумме убыванию.

Нейросеть сгенерировала запрос с JOIN'ом таблиц products и order_items. Мы сразу получили нужные данные для дашборда.

9. Промт «Обучение новичка»

Когда использовать: когда нужно быстро объяснить основы SQL коллеге или самому себе.

Промт:

Ты — преподаватель SQL. Объясни {тему, например, JOIN} простыми словами, приведи примеры кода и объясни, когда это использовать. Начни с базовых понятий.

Пример: Мы использовали этот промт, чтобы разобраться с оконными функциями. Нейросеть дала понятное объяснение с примерами ROW_NUMBER() и SUM() OVER (). Это помогло нам писать более сложные запросы.

10. Промт «Поиск ошибок в запросе»

Когда использовать: когда запрос выдаёт неожиданный результат или ошибку.

Промт:

Ты — отладчик SQL. Вот запрос, который выдаёт ошибку (или неверный результат). Найди проблему и предложи исправление.

Запрос: {вставьте запрос}
Ошибка: {текст ошибки, если есть}

Пример: У нас была ошибка синтаксиса из-за неправильно расставленных кавычек. Нейросеть мгновенно нашла проблему и предложила исправление. Это сэкономило нам 10 минут на поиск.

11. Промт «Советы по индексации»

Когда использовать: когда вы не уверены, какие индексы создать для ускорения запросов.

Промт:

Ты — эксперт по индексам в PostgreSQL. Проанализируй таблицу {имя таблицы} с полями {перечислите поля} и предложи оптимальные индексы для следующих запросов: {перечислите запросы}. Объясни, почему эти индексы помогут.

Пример: Мы использовали этот промт для таблицы orders. Нейросеть предложила составной индекс на (customer_id, created_at) для ускорения выборки заказов по клиенту за период. Это значительно ускорило наши отчёты.

12. Промт «Автоматизация рутинных задач»

Когда использовать: когда вы часто выполняете однотипные запросы и хотите автоматизировать их написание.

Промт:

Ты — помощник DBA. Создай шаблон SQL-запроса для {тип задачи, например, еженедельный отчёт}. Используй параметры, чтобы можно было подставлять даты или другие значения. Покажи пример вызова.

Пример: Мы создали шаблон для еженедельного отчёта по продажам с параметром даты начала. Теперь нам нужно только подставить нужную дату — и запрос готов. Это сократило время на 70%!

Что дальше?

Эти промты — наш рабочий инструмент. Они не заменяют понимания SQL, но экономят часы на рутине. Мы надеемся, что они помогут и вам. Попробуйте адаптировать их под свои задачи. Если у вас есть свои проверенные промты — поделитесь в комментариях, будем рады узнать что-то новое!

А если вы хотите автоматизировать работу с базами данных ещё сильнее, обратите внимание на AI-агента ASI Biont — он умеет выполнять такие задачи прямо через интерфейс без копипасты. Но это уже другая история.

← Все статьи

Комментарии

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

От LeetCode до оффера: как ИИ-промты превращают подготовку к FAANG из зубрёжки в инженерию

18 августа 2026

DevOps-инженер 2026: 10 промтов, которые заменят половину рутины

18 августа 2026

Как я превратил хаос данных в работающие ML-модели: 12 промтов, которые экономят мне 15 часов в неделю

18 августа 2026

От 3 дней до 2 часов: как мы автоматизировали анализ данных с помощью промтов

18 августа 2026

От CSV до продакшена: 12 промтов, которые заменят половину рутины Data Scientist’а

18 августа 2026

Легаси-код: 12 промтов, которые превратят технический долг в чистую архитектуру

18 августа 2026

SQL-костыли больше не нужны: 12 промтов, которые превратят ваш PostgreSQL в гоночный болид

18 августа 2026

От идеи до релиза: 10 промтов, которые заменят продакт-менеджеру команду аналитиков

18 августа 2026

SEO-промты, которые реально работают: как выжать максимум из ИИ для продвижения

18 августа 2026