Перейти к содержимому

Основы SQL

DDL vs DML

DDL (Data Definition Language) — структура: CREATE, ALTER, DROP.

DML (Data Manipulation Language) — данные: SELECT, INSERT, UPDATE, DELETE.

Создание таблицы

CREATE TABLE users (
    id      BIGSERIAL PRIMARY KEY,
    name    VARCHAR(100) NOT NULL,
    email   VARCHAR(255) NOT NULL UNIQUE,
    created TIMESTAMPTZ  DEFAULT now()
);

Базовые запросы

-- Выборка с фильтрацией и сортировкой
SELECT id, name, email
  FROM users
 WHERE created > now() - INTERVAL '30 days'
 ORDER BY name;

-- Вставка
INSERT INTO users (name, email) VALUES ('Иван', 'ivan@example.com');

-- Обновление
UPDATE users SET name = 'Иван Иванов' WHERE id = 1;

-- Удаление
DELETE FROM users WHERE id = 1;

JOIN

SELECT u.name, o.total
  FROM users u
  JOIN orders o ON o.user_id = u.id
 WHERE o.total > 1000;