SELECT
Основная команда SQL для получения данных из таблицы или нескольких таблиц.
SELECT column1, column2 FROM table WHERE condition ORDER BY column LIMIT n;
Объяснение
Пример
-- Выбрать имя и email всех активных пользователей SELECT name, email FROM users WHERE is_active = true ORDER BY name LIMIT 10;
Связанные термины
Анекдоты по теме
— Что такое TABLESAMPLE? — Выборка случайных строк без полного скана. SELECT * FROM orders TABLESAMPLE BERNOULLI(1); — 1% строк случайно. — Зачем? — Быстрая оценка данных, тестирование на подвыборке. — Чем отличается BERNOULLI от SYSTEM? — BERNOULLI: каждая строка с вероятностью p%. SYSTEM: случайные блоки страниц — быстрее, менее равномерно.
— Оптимизатор может «заглянуть» внутрь CTE? — В PostgreSQL до 12 — нет. CTE был «забором оптимизации». — С PostgreSQL 12+? — По умолчанию может оптимизировать. Если нужно принудительно материализовать — WITH ... AS MATERIALIZED.
— Что такое партиционирование? — Разбить одну большую таблицу на несколько меньших по какому-то признаку. — Например? — По дате: orders_2023, orders_2024. Запрос за 2024 год читает только одну партицию. — Это же просто несколько таблиц! — Но с прозрачным доступом через одно имя.