Короткий ответ
SELECT выбирает данные из базы: возвращаемые данные помещаются в результирующую таблицу (result-set). Вместе с ним используются WHERE для фильтрации записей, ORDER BY для сортировки, GROUP BY с агрегатными функциями для сводных результатов, HAVING для фильтрации групп и DISTINCT для уникальных записей.
Как это работает подробнее
SELECT — один из стандартных операторов языка SQL, а перечисленные предложения уточняют, какие строки и в каком виде вернёт запрос.
- WHERE. Фильтрует записи по конкретным условиям, например
WHERE graduation_year = 2019. - ORDER BY. Сортирует записи по одному или нескольким полям в возрастающем или убывающем порядке:
ORDER BY studentID DESC. - GROUP BY. Группирует записи с одинаковыми значениями и применяется вместе с агрегатными функциями для сводных результатов.
- HAVING. Фильтрует уже сгруппированные записи и, в отличие от WHERE, может накладывать условия на агрегаты.
- DISTINCT. Возвращает уникальные записи:
SELECT DISTINCT StudentID, StudentName FROM Student.
Пример кода
Выборка с фильтром и сортировкой
SELECT * FROM myDB.students;
SELECT * FROM myDB.students
WHERE graduation_year = 2019
ORDER BY studentID DESC;
SELECT DISTINCT StudentID, StudentName FROM Student;Что использовать на практике
- Нужные столбцы. Перечисляй конкретные столбцы вместо
*, когда это возможно. - Ранняя фильтрация. Сужай выборку через
WHERE, чтобы не тянуть лишние строки.