Ответ
В 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
) для вычислений по набору строк.