Ответ
В SQL принято выделять несколько групп команд, которые образуют его подмножества (языки):
-
DML (Data Manipulation Language) — язык для манипуляции данными. Эти команды работают с содержимым таблиц.
SELECT: выборка данных.SELECT name, email FROM users WHERE age > 30;INSERT: добавление новых записей.INSERT INTO users (name, age) VALUES ('Bob', 42);UPDATE: обновление существующих данных.UPDATE users SET age = 43 WHERE name = 'Bob';DELETE: удаление записей.DELETE FROM users WHERE name = 'Bob';
-
DDL (Data Definition Language) — язык для определения данных. Эти команды управляют структурой базы данных и её объектами.
CREATE: создание объектов (таблиц, индексов).CREATE TABLE products (id SERIAL PRIMARY KEY, name VARCHAR(100), price INT);ALTER: изменение структуры объекта.ALTER TABLE products ADD COLUMN description TEXT;DROP: удаление объекта.DROP TABLE products;
-
DCL (Data Control Language) — язык для управления доступом к данным.
GRANT: предоставление прав пользователям.REVOKE: отзыв прав.
-
TCL (Transaction Control Language) — язык для управления транзакциями.
COMMIT: сохранение изменений, сделанных в транзакции.ROLLBACK: откат изменений.SAVEPOINT: установка промежуточной точки для отката.
Также важной частью DML являются JOIN-операторы (INNER JOIN, LEFT JOIN и т.д.) для объединения данных из нескольких таблиц и агрегатные функции (COUNT, SUM, AVG, MAX, MIN) для вычислений по набору строк.