Что такое case function?
В SQL, оператор CASE
представляет собой условное выражение, которое используется для выполнения различных действий в зависимости от условия. Он может использоваться в различных частях запроса, таких как SELECT, WHERE, и ORDER BY.
Синтаксис оператора CASE:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
condition1
,condition2
, и так далее - логические условия.result1
,result2
, и так далее - значения, возвращаемые в случае выполнения соответствующего условия.default_result
- значение, возвращаемое, если ни одно из условий не выполняется. Может быть опущено, если необходимо.
Пример использования оператора CASE
в операторе SELECT
:
SELECT
EmployeeID,
FirstName,
LastName,
CASE
WHEN Salary > 50000 THEN 'High'
WHEN Salary > 30000 THEN 'Medium'
ELSE 'Low'
END AS SalaryCategory
FROM Employees;
В этом примере, в зависимости от значения столбца Salary
, возвращается разная категория зарплаты.
Также, оператор CASE
может использоваться в условии WHERE
, например:
SELECT *
FROM Orders
WHERE
CASE
WHEN Status = 'Shipped' THEN 1
WHEN Status = 'Processing' THEN 0
ELSE -1
END = 1;
Этот запрос выбирает заказы со статусом 'Shipped'. Возвращаемое значение CASE
сравнивается с 1 в условии WHERE
.
Last updated
Was this helpful?