Выбор столбцов и выражений
Выбирайте столбцы, вычисляйте производные выражения, задавайте результатам псевдонимы с помощью AS и используйте DISTINCT для удаления дубликатов
«Выбор столбцов и выражений» — бесплатный урок SQL Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SQL Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SQL Academy содержит 4 уроков всего.
Базовый SELECT
SELECT выбирает столбцы из одной или нескольких таблиц.
SELECT id, email, full_name
FROM users;SELECT *
SELECT * возвращает каждый столбец. Это удобно в REPL, но плохо для рабочего кода:
- Возвращается больше байтов, чем нужно
- Код ломается при добавлении или перестановке столбцов
- Скрывается замысел кода при проверке изменений
Вычисляемые выражения
В списке SELECT можно вычислять новые столбцы:
SELECT id,
price,
quantity,
price * quantity AS subtotal,
UPPER(email) AS email_upper
FROM order_items;Псевдонимы столбцов с AS
AS переименовывает выходной столбец. Это ключевое слово необязательно, но улучшает читаемость:
SELECT first_name || ' ' || last_name AS full_name,
EXTRACT(YEAR FROM created_at) AS signup_year
FROM users;Объединение строк
Стандартный SQL объединяет строки с помощью ||. Многие базы данных также поддерживают CONCAT(...):
SELECT first_name || ' ' || last_name FROM users;
SELECT CONCAT(first_name, ' ', last_name) FROM users;
-- || with NULL → NULL
-- CONCAT skips NULLs (treats them as empty strings)DISTINCT
DISTINCT удаляет дублирующиеся строки из результата:
SELECT DISTINCT country FROM users;
SELECT DISTINCT country, city FROM users; -- distinct pairsDISTINCT ON (PostgreSQL)
DISTINCT ON оставляет первую строку в каждой группе, определяемую с помощью ORDER BY:
-- Most recent login per user:
SELECT DISTINCT ON (user_id) user_id, login_at, ip
FROM logins
ORDER BY user_id, login_at DESC;Выражения CASE в SELECT
Вычисление одного из нескольких значений для каждой строки:
SELECT id,
total,
CASE
WHEN total >= 1000 THEN 'whale'
WHEN total >= 100 THEN 'regular'
ELSE 'small'
END AS bucket
FROM orders;Кавычки для идентификаторов и строк
В SQL используются два вида кавычек:
-- Single quotes: string literal
SELECT 'hello' AS greeting;
-- Double quotes: identifier (column/table name with special chars or case)
SELECT "First Name" FROM users;
-- Mixing them up is a common error.Приведение типов
Преобразуйте значения между типами с помощью :: или CAST(... AS ...):
SELECT '2024-01-15'::DATE AS d;
SELECT CAST('42' AS INTEGER) AS n;
SELECT (price::TEXT || ' USD') AS pretty FROM products;Выбор данных из нескольких таблиц (предварительный просмотр)
Можно извлекать столбцы из нескольких таблиц в одном запросе — для этого и нужны соединения JOIN. Мы рассмотрим их в курсе «Основы JOIN».
SELECT u.email, o.total
FROM users u
JOIN orders o ON o.user_id = u.id;Повторение
SELECT выбирает столбцы и вычисляемые выражения.
- Используйте явные списки столбцов, а не
* - Вычисляйте значения на лету с помощью выражений
- Используйте псевдонимы с
ASдля ясности DISTINCTудаляет дублирующиеся строки из результата
Быстрая проверка
Какое ключевое слово удаляет дублирующиеся строки из набора результатов?
Часто задаваемые вопросы
Урок «Выбор столбцов и выражений» бесплатный?
Да — полный текст урока «Выбор столбцов и выражений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SQL Academy, подпишись на CoddyKit PRO. Курс SQL Academy содержит 4 уроков всего.
Чему я научусь в уроке «Выбор столбцов и выражений»?
Выбирайте столбцы, вычисляйте производные выражения, задавайте результатам псевдонимы с помощью AS и используйте DISTINCT для удаления дубликатов Ты практикуешь SQL Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SQL Academy?
Предыдущий опыт не требуется. SQL Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Выбор столбцов и выражений»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SQL Academy?
Да. Каждый урок SQL Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Выбор столбцов и выражений
- Фильтры WHERE: операторы сравнения и логики
- ORDER BY для одного и нескольких столбцов
- Основы LIMIT, OFFSET и разбиения на страницы