Команда 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,
которая копирует данные из одной таблицы в другую