Поиск по сайту:

SQL-выражения


Выражение SQL — это комбинация одного или нескольких значений, операторов и функций SQL, которая приводит к значению. Эти ВЫРАЖЕНИЯ SQL похожи на формулы и написаны на языке запросов. Вы также можете использовать их для запроса к базе данных определенного набора данных.

SQL-выражения

  1. логическое значение
  2. Числовой
  3. Дата

Давайте попробуем подробно разобраться в типах выражений с помощью примеров программ.

Логическое выражение SQL

Логическое выражение SQL извлекает данные на основе условия, которое упоминается как часть запроса SQL. Он должен получить только одно значение при выполнении запроса. Его синтаксис приведен ниже.

SELECT column 
FROM table_name 
WHERE SINGLE_VALUE_MATCHING_EXPRESSION;

Давайте попробуем понять логическое выражение, используя пример таблицы с некоторыми данными.

EmpId EmpName EmpAge EmpSalary
1 John 32 2000
2 Smith 25 2500
3 Henry 29 3000

В качестве примера мы рассмотрим упомянутую выше таблицу Employee. Пример запроса:

SELECT EmpName FROM Employee WHERE EmpId = 1;

Приведенный выше запрос приведет к единственному значению, которое для нашего запроса равно \John. Логические выражения SQL следует использовать с первичными ключами, чтобы всегда получать только один результат. Это требуется в случае вложенных запросов SQL на выборку.

select posts.title, posts.author_id from posts, authors 
where posts.author_id = authors.id and 
posts.author_id = (select id from authors where name = 'Pankaj');

Приведенный выше запрос вернет все имена и идентификаторы сообщений, где имя автора — Pankaj. Здесь вложенный SQL-запрос всегда должен возвращать только одну строку, иначе вы получите сообщение об ошибке, так как Подзапрос возвращает более 1 строки.

Числовое выражение SQL

Числовое выражение SQL используется для выполнения математических операций в запросе SQL. Его синтаксис следующий:

SELECT NUMERICAL_EXPRESSION as OPERATION_NAME
FROM table_name

NUMERICAL_EXPRESSION — это математическая формула функции, которая будет использоваться в SQL-запросе. Давайте попробуем понять числовое выражение на примере.

SELECT count(*) FROM Employee; -- 3

Результатом приведенного выше запроса будет 3, потому что функция COUNT(*) предоставит общее количество строк на основе условия в предложении WHERE. Например, select count(*) from employee where empsalary > 2400; вернет 2. Существуют и другие функции, такие как sum(), avg(), min(), max() и т. д. Эти функции используются для математических операций. Давайте посмотрим еще несколько примеров фрагментов кода для числовых выражений SQL.

SELECT sum(EmpSalary) as "Salary" FROM Employee; -- 7500
select min(EmpSalary) from Employee; -- 2000
select max(EmpSalary) from Employee; -- 3000
select sum(EmpSalary) from Employee; -- 7500
select avg(EmpSalary) from Employee; -- 2500.0000

Выражение даты SQL

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

SELECT CURRENT_TIMESTAMP; -- 2018-01-20 10:32:37

-- For MYQSL
SELECT now(); -- 2018-01-20 10:32:57

-- For SQL Server
SELECT GetDate();

-- For Oracle DB
select sysdate from Dual; -- 20-JAN-18

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