0Pricing
Coding Interview Prep · Урок

Что такое SQL и зачем его спрашивают на собеседованиях

Определяйте SQL, DDL, DML, DCL и TCL, а также различие между SQL и реляционной системой управления базами данных.

«Что такое SQL и зачем его спрашивают на собеседованиях» — бесплатный урок Coding Interview Prep на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Coding Interview Prep, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Coding Interview Prep содержит 4 уроков всего.

Почему этот вопрос открывает собеседование

Почти каждое собеседование по SQL начинается с вопроса «Что такое SQL?» Это критерий отбора: хороший ответ объясняет, что такое SQL, с чем он работает и какие бывают типы его операторов. Давайте составим такой ответ.

Что на самом деле представляет собой SQL

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

SELECT name, salary
FROM employees
WHERE department = 'Engineering';

SQL — не движок базы данных

Распространённая ловушка: SQL — это язык, а MySQL, Postgres и Oracle — это движки, которые его реализуют. Каждый из них добавляет поверх стандарта собственный диалект.

Четыре категории операторов

Собеседующие любят просить классифицировать операторы SQL. Есть четыре группы: DDL отвечает за структуру, DML — за данные, DCL — за разрешения, а TCL — за транзакции.

DDL: определение структуры

DDL задаёт структуру базы данных: CREATE, ALTER, DROP, TRUNCATE. Стоит упомянуть важную деталь: большинство операторов DDL автоматически выполняют COMMIT, поэтому их обычно нельзя отменить с помощью ROLLBACK.

CREATE TABLE employees (
  id INTEGER PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  department VARCHAR(50),
  salary NUMERIC(10,2)
);

DML: изменение данных

DML изменяет строки внутри таблиц: INSERT, UPDATE, DELETE и SELECT. Безопасная формулировка: «SELECT — это DML только для чтения, который иногда выделяют в отдельную категорию DQL».

UPDATE employees
SET salary = salary * 1.10
WHERE department = 'Engineering';

DCL: управление доступом

DCL управляет тем, кто и что может делать, с помощью всего двух команд: GRANT предоставляет привилегию, а REVOKE её отзывает. Это показывает, что Вы понимаете многопользовательскую природу базы данных.

GRANT SELECT, INSERT ON employees TO analyst_role;
REVOKE INSERT ON employees FROM analyst_role;

TCL: управление транзакциями

TCL объединяет изменения в транзакции по принципу «всё или ничего»: BEGIN, COMMIT, ROLLBACK, SAVEPOINT. Ключевое слово здесь — атомарность: либо выполняется всё, либо не выполняется ничего.

BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;

Декларативный и процедурный подходы

Почему SQL называют декларативным? Вы задаёте нужный результат, а оптимизатор запросов сам выбирает способ его получить. SQL также ориентирован на множества: он обрабатывает целые наборы строк одновременно.

Практический пример: классификация операторов

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

Как уложить ответ в 30 секунд

Подготовьте чёткий 30-секундный ответ, который сможете произнести под давлением. Выделенное ниже определение охватывает исходный вопрос и несколько вероятных уточнений за один короткий ответ.

Быстрая проверка

Проверьте, насколько хорошо Вы разобрались в категориях операторов.

Итоги

Итак: SQL — это декларативный язык, ориентированный на множества, для работы с реляционными данными. Он делится на DDL, DML, DCL, TCL. Помните о ловушках: TRUNCATE относится к DDL, а SELECT — это DML только для чтения.

Часто задаваемые вопросы

Урок «Что такое SQL и зачем его спрашивают на собеседованиях» бесплатный?

Да — полный текст урока «Что такое SQL и зачем его спрашивают на собеседованиях» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Coding Interview Prep, подпишись на CoddyKit PRO. Курс Coding Interview Prep содержит 4 уроков всего.

Чему я научусь в уроке «Что такое SQL и зачем его спрашивают на собеседованиях»?

Определяйте SQL, DDL, DML, DCL и TCL, а также различие между SQL и реляционной системой управления базами данных. Ты практикуешь Coding Interview Prep с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Coding Interview Prep?

Предыдущий опыт не требуется. Coding Interview Prep на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Что такое SQL и зачем его спрашивают на собеседованиях»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Coding Interview Prep?

Да. Каждый урок Coding Interview Prep включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Что такое SQL и зачем его спрашивают на собеседованиях
  2. Логический порядок выполнения запроса
  3. Первичные и внешние ключи и ограничения
  4. Чтение схемы в условиях стресса
← Назад к Coding Interview Prep