Зачем?

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

Почему не взять готовое?

Из готового есть куча книг, учебников, курсов, видео и так далее.

Но у них есть недостатки:

  • Мне нужна книга в печатном виде, электронный формат не так хорошо усваивается, не говоря уже о видео
  • Книги полны воды, лишних деталей и устаревшей информации
  • Статьи и учебники в виде электронных книг не содержат все необходимые мне темы или недостаточно глубоко их раскрывают
  • Некоторые темы явно лишние для новичка
  • Слишком много текста

Окей, как же сделать книгу за 1 час?

Конечно, я не писал её сам, это было бы нереально за 1 час.

Я поставил эксперимент с DeepSeek: смогу ли я написать учебник по SQL целиком через нейросеть?

Почему DeepSeek?

Несколько дней назад я создавал Bash скрипт для рабочих задач через ChatGPT и через DeepSeek. DeepSeek бесплатный, доступен без VPN и справился с задачей гораздо лучше чем ChatGPT. Мне очень понравилось работать с DeepSeek, поэтому сейчас использую его.

Шаг 1. Создаём содержание

Я попросил написать содержание для учебника.

Использовал такой промт:

Напиши пожалуйста 10 тем которые необходимо изучить чтобы освоить SQL на начальном уровне для веб-разработчика

Я знал, что изначально будут лишние темы. Далее я сократил количество тем, выкинув лишнее.

убери из списка тему по индексам, по безопасности, а также пункт про основы sql

Результат получился отличный!

1. Работа с базами данных

  • Создание и удаление БД (CREATE DATABASE, DROP DATABASE)
  • Выбор БД (USE в MySQL, \c в PostgreSQL)

2. Таблицы и типы данных

  • Создание, изменение, удаление таблиц (CREATE TABLE, ALTER TABLE, DROP TABLE)
  • Основные типы данных: INT, VARCHAR, TEXT, BOOLEAN, DATE

3. Вставка, обновление и удаление данных

  • INSERT – добавление записей
  • UPDATE – изменение данных
  • DELETE – удаление записей

4. Выборка данных (SELECT)

  • Базовые запросы (SELECT * FROM table)
  • Фильтрация (WHERE, операторы =, >, <, !=)
  • Сортировка (ORDER BY)
  • Ограничение выборки (LIMIT)

5. Условия и операторы

  • Логические операторы (AND, OR, NOT)
  • Операторы IN, BETWEEN, LIKE для поиска
  • Работа с NULL (IS NULL, IS NOT NULL)

6. Агрегатные функции и группировка

  • COUNT(), SUM(), AVG(), MIN(), MAX()
  • Группировка (GROUP BY)
  • Фильтрация групп (HAVING)

7. Связи между таблицами (JOIN)

  • Виды соединений: INNER JOIN, LEFT JOIN
  • Практика на примере связей “один-ко-многим”

Шаг 2. Пишем главы

Для создания глав учебника я сделал такой базовый промт. Далее чуть-чуть видоизменял его под некоторые главы.

Ты очень опытный веб программист и пишешь методичку по SQL для новичков в веб-программировании. Вы не изучаете фреймворки, а только для начала изучаете чистый SQL. В примерах кода вы используете синтаксис MySQL, но не уточняете что это именно MySQL. Стараемся писать очень кратко и понятно. 

Теперь нужно написать главу 1 со следующим содержанием:

### 1. **Работа с базами данных**  
   - Создание и удаление БД (`CREATE DATABASE`, `DROP DATABASE`)  
   - Выбор БД (`USE`)  

Так как это короткая глава, здесь должны быть только примеры использования команд с самым коротким описанием. Уложись в несколько абзацев текста.

В некоторых случаях мне не хватало некоторых примеров, тогда я просил нейросеть добавить или удалить что-то, и она послушно это делала.

Например, я попросил после SQL запросов расписать что именно делает запрос, а также добавить примеры на отдельные виды запросов.

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

Шаг 3. Создание PDF

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

Далее я вставляю главу в сервис создающий PDF из Markdown и сохраняю главу в PDF.

Таким образом, у меня есть PDF файлы на каждую главу книги и на оглавление. Для удобства я объединил их в общий PDF через ещё один сервис: https://www.ilovepdf.com/merge_pdf

Теперь получив всю книгу в готовом для печати формате PDF, я тут же её и распечатал.

Что же получилось в итоге?

Это не книга, а скорее учебное пособие, краткое введение в основы SQL. Всего в ней получилось 13 страниц, и охвачены все темы которые я хотел охватить.

Единственное чего в ней нехватает, это, пожалуй, задач на закрепление материала. Их можно добавить позже, написав тем же способом что и саму книгу.

Вот и сама книга в 13 страниц: Основы SQL

Благодаря нейросетям я создал её за 1 час.