Руководство по SQL. Выражения.

Выражение – это комбинация одного или нескольких значений, операторов и SQL функций, которые оценивают значение.

Другими словами это запрос в базу данных (далее – БД).

Базовый синтаксис выражения имеет следующий вид:


SELECT колонка1, колонка2, колонкаN 
FROM имя_таблицы 
WHERE [условие|выражение];

Предположим, что у нас есть таблица developers:


mysql> select * from developers;
+----+-------------------+------------+--------+
| id | name              | specialty  | salary |
+----+-------------------+------------+--------+
|  1 | Eugene Suleimanov | Java       |   2000 |
|  2 | Peter Romanenko   | C++        |   2500 |
|  3 | Asya Suleimanova  | Javascript |   1500 |
|  4 | Andrei Komarov    | Php        |   2000 |
|  5 | Ivan Kurochkin    | Java       |   1900 |
|  6 | Igor Kolesnikov   | C++        |   3800 |
+----+-------------------+------------+--------+
6 rows in set (0.00 sec)


Логическое выражение
Логическое выражение выбирает данные на основе совпадения и имеет следующий вид:


SELECT колонка1, колонка2, колонкаN 
FROM имя_таблицы 
WHERE значение совпадает с выражением;

Пример:


mysql> select * from developers where salary = 3800;
+----+-----------------+-----------+--------+
| id | name            | specialty | salary |
+----+-----------------+-----------+--------+
|  6 | Igor Kolesnikov | C++       |   3800 |
+----+-----------------+-----------+--------+
1 row in set (0.00 sec)


Числовые выражения
Это выражение, которое выполняет любую математическую операцию в любом запросе и имеет следующий вид:


SELECT числовое_выражение as  операционное_имя
[FROM имя_таблицы
WHERE условие] ;

Пример:


mysql> select count(*) as "Java Developers" FROM developers where specialty like 'java';
+-----------------+
| Java Developers |
+-----------------+
|               2 |
+-----------------+
1 row in set (0.00 sec)


Выражения даты и времени
Данный вид выражений возвращает текущие значения даты и времени:


mysql> select current_timestamp;
+---------------------+
| current_timestamp   |
+---------------------+
| 2016-05-30 18:45:46 |
+---------------------+
1 row in set (0.00 sec)

На этом мы заканчиваем обзор выражений языка структурированных запросов SQL.
В следующей статье мы рассмотрим пример создания базы данных.