Урок 2.1: Выборка данных из таблицы
Выборка данных из таблицы
Самой фундаментальной операцией в SQL является извлечение данных из таблицы. Для этого используется оператор SELECT.
Базовый синтаксис (выборка всех столбцов)
Чтобы выбрать все столбцы из таблицы, используется синтаксис SELECT *:
SELECT *
FROM table_name;
SELECT: Это ключевое слово извлекает данные из таблицы.*(звездочка): Указывает, что должны быть извлечены все столбцы из таблицы. Звездочка (*) действует как подстановочный знак, представляющий все столбцы в таблице.FROM table_name: Указывает таблицу, из которой необходимо извлечь данные. Заменитеtable_nameфактическим именем таблицы, к которой вы обращаетесь.
Пример (база данных Sakila)
Чтобы выбрать все столбцы из таблицы actor в базе данных Sakila:
SELECT *
FROM actor;
Этот запрос вернет все строки и все столбцы (например, actor_id, first_name, last_name, last_update) из таблицы actor.
Избегайте использования * для выбора всех столбцов
Использование * для выбора всех столбцов обычно не рекомендуется. Хотя это может показаться удобным, это может привести к нескольким проблемам:
- Влияние на производительность: Извлечение всех столбцов может увеличить объем передаваемых данных, особенно если в таблице много столбцов или большие наборы данных.
- Непреднамеренные изменения: Если схема таблицы изменится (например, будут добавлены новые столбцы), запросы, использующие
*, могут вернуть неожиданные результаты. - Читаемость и поддержка: Явное указание столбцов упрощает понимание и поддержку запроса.
Вместо использования * рекомендуется явно перечислять необходимые столбцы. Этот подход обеспечивает ясность, снижает риск непреднамеренных результатов и повышает производительность запроса.
Выборка определенных столбцов
Чтобы извлечь определенные столбцы, перечислите их имена в операторе SELECT, разделяя запятыми:
SELECT column1, column2, column3
FROM table_name;
SELECT column1, column2, column3: Указывает столбцы для извлечения. Заменитеcolumn1,column2иcolumn3фактическими именами столбцов.FROM table_name: Указывает таблицу, из которой необходимо извлечь данные.
Пример (база данных Sakila)
Чтобы извлечь только столбцы first_name и last_name из таблицы actor:
SELECT first_name, last_name
FROM actor;
Этот запрос вернет все строки, но только столбцы first_name и last_name для каждого актера.
Порядок столбцов в SELECT
Порядок, в котором вы перечисляете столбцы в операторе SELECT, определяет их порядок в результирующем наборе. Однако это не изменяет порядок столбцов в самой таблице.
Пример (база данных Sakila)
SELECT last_name, first_name
FROM actor;
В этом случае столбец last_name появится перед столбцом first_name в выходных данных, даже если first_name может быть определен раньше в структуре таблицы. Порядок в операторе SELECT переопределяет порядок столбцов таблицы по умолчанию.
Основные выводы из этого урока:
SELECT *извлекает все столбцы из таблицы.SELECT column1, column2, ...извлекает только указанные столбцы.- Порядок столбцов в операторе
SELECTопределяет порядок в результирующем наборе.