Команда SELECT
Команда SELECT получает записи из
базы данных по определенному условию, которое
задается с помощью команды WHERE.
Эти записи можно отсортировать с помощью
команды ORDER
BY, а также можно ограничить их количество
с помощью LIMIT.
Синтаксис
SELECT * FROM имя_таблицы
SELECT * FROM имя_таблицы WHERE условие
SELECT поле1, поле2... FROM имя_таблицы WHERE условие
Полный синтаксис:
SELECT
[STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
[SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] [HIGH_PRIORITY]
[DISTINCT | DISTINCTROW | ALL]
select_expression,...
[INTO {OUTFILE | DUMPFILE} 'file_name' export_options]
[FROM table_references
[WHERE where_definition]
[GROUP BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]
[HAVING where_definition]
[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]
[LIMIT [offset,] rows | rows OFFSET offset]
[PROCEDURE procedure_name(argument_list)]
[FOR UPDATE | LOCK IN SHARE MODE]]
Таблицы для примеров
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 1 | user1 | 23 | 400 |
| 2 | user2 | 25 | 500 |
| 3 | user3 | 23 | 500 |
| 4 | user4 | 30 | 900 |
| 5 | user5 | 27 | 500 |
| 6 | user6 | 28 | 900 |
Пример
В данном примере из таблицы выбираются записи,
у которых поле id больше 3-х:
SELECT * FROM employees WHERE id>3
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 4 | user4 | 30 | 900 |
| 5 | user5 | 27 | 500 |
| 6 | user6 | 28 | 900 |
Пример
В данном примере выбираются записи, у которых
поле id меньше 3-х:
SELECT * FROM employees WHERE id<=3
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 1 | user1 | 23 | 400 |
| 2 | user2 | 25 | 500 |
| 3 | user3 | 23 | 500 |
Пример
В данном примере выбираются записи, у которых
поле id равно 3-м:
SELECT * FROM employees WHERE id=3
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 3 | user3 | 23 | 500 |
Пример
В данном примере выбираются записи,у которых
поле id НЕ равно 3-м:
SELECT * FROM employees WHERE id!=3
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 1 | user1 | 23 | 400 |
| 2 | user2 | 25 | 500 |
| 4 | user4 | 30 | 900 |
| 5 | user5 | 27 | 500 |
| 6 | user6 | 28 | 900 |
Запрос можно переписать следующим образом:
SELECT * FROM employees WHERE id<>3
Пример
В данном примере отсутствует WHERE
- поэтому выберутся все записи в таблице:
SELECT * FROM employees
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 1 | user1 | 23 | 400 |
| 2 | user2 | 25 | 500 |
| 3 | user3 | 23 | 500 |
| 4 | user4 | 30 | 900 |
| 5 | user5 | 27 | 500 |
| 6 | user6 | 28 | 900 |
Пример
В данном примере вместо * указаны конкретные поля (id, name, age):
SELECT id, name, age FROM employees
Результат выполнения кода:
| id айди |
name имя |
age возраст |
|---|---|---|
| 1 | user1 | 23 |
| 2 | user2 | 25 |
| 3 | user3 | 23 |
| 4 | user4 | 30 |
| 5 | user5 | 27 |
| 6 | user6 | 28 |
Пример
В данном примере выбирается только одно поле - name:
SELECT name FROM employees
Результат выполнения кода:
| name имя |
|---|
| user1 |
| user2 |
| user3 |
| user4 |
| user5 |
| user6 |
Смотрите также
-
команду
INSERT,
которая вставляет данные в таблицу -
команду
UPDATE,
которая обновляет данные в таблице -
команду
DELETE,
которая удаляет данные из таблицы -
функцию
COUNT,
которая подсчитывает количество записей -
команду SELECT INTO,
которая копирует данные из одной таблицы в другую