В этом учебном пособии вы узнаете, как использовать SQLite оператор SELECT с синтаксисом и примерами.
Описание
SQLite оператор SELECT используется для извлечения записей из одной или нескольких таблиц в SQLite.
Синтаксис
Простая форма синтаксис для SQLite оператора SELECT:
FROM tables
[WHERE conditions];
И полный синтаксис оператора SQLite SELECT:
expressions
FROM tables
[WHERE conditions]
[GROUP BY expressions]
[HAVING condition]
[ORDER BY expression [ ASC | DESC ]]
[LIMIT number_rows OFFSET offset_value];
Параметры или аргументы
ALL
Необязательный. Если указан, он возвращает все совпадающие строки.
DISTINCT
Необязательный. Если указан, он удаляет дубликаты из результирующего набора. Узнайте больше об операторе DISTINCT.
expressions
Столбцы или расчеты, которые вы хотите получить. Используйте *, если вы хотите выбрать все столбцы.
tables
Таблицы, из которых вы хотите получить записи. В операторе FROM должна быть указана хотя бы одна таблица.
WHERE conditions
Необязательный. Условия, которые должны быть выполнены для выбранных записей.
GROUP BY expressions
Необязательный. Он собирает данные по нескольким записям и группирует результаты по одному или нескольким столбцам. Узнайте больше об операторе GROUP BY.
HAVING condition
Необязательный. Он используется в сочетании с GROUP BY, чтобы ограничить группы возвращаемых строк только теми, чье условие TRUE. Подробнее об операторе HAVING.
ORDER BY expression
Необязательный. Он используется для сортировки записей в вашем результирующем наборе. Подробнее об операторе ORDER BY.
LIMIT number_rows OFFSET offset_value
Необязательный. Если указан LIMIT, он контролирует максимальное количество записей для извлечения. Максимум, количество записей, указанное number_rows, будет возвращено в результирующем наборе. Первая строка, возвращаемая LIMIT, будет определена offset_value.
Пример - выбор всех полей из одной таблицы
Рассмотрим, как использовать SQLite запрос SELECT для выбора всех полей в таблице.
1 2 3 4 |
SELECT * FROM employees WHERE employee_id < 50 ORDER BY last_name ASC; |
В этом примере SQLite оператора SELECT мы использовали *, чтобы выбрать все поля из таблицы employee, где employee_id меньше 50. Результирующий набор сортируется по last_name в порядке возрастания.
Пример - выбор отдельных полей из одной таблицы
Вы также можете использовать SQLite оператор SELECT для выбора отдельных полей из таблицы, в отличие от выбора всех полей.
Например:
1 2 3 4 5 6 |
SELECT employee_id, last_name, first_name FROM employees WHERE employee_id < 50 ORDER BY last_name ASC, employee_id DESC; |
В этом SQLite примере SELECT будут возвращаться только поля employee_id, last_name и first_name из таблицы employee, где employee_id меньше 50. Результаты сортируются по last_name в порядке возрастания, а затем employee_id в порядке убывания.
Пример - выбор полей из нескольких таблиц
Вы также можете использовать SQLite оператор SELECT для извлечения полей из нескольких таблиц.
1 2 3 4 5 6 7 |
SELECT employees.employee_id, employees.last_name, positions.title FROM employees INNER JOIN positions ON employees.employee_id = positions.employee_id ORDER BY positions.title; |
Этот SQLite пример SELECT объединяет две таблицы, чтобы получить результирующий набор, который отображает поля employee_id, last_name и title, где значение employee_id совпадает в таблице employees и positions. Результаты сортируются по positions.title в порядке возрастания.