В днешния свят, където се генерира огромно количество данни всеки ден, трябва да сме сигурни, че имаме възможността да извличаме данни въз основа на условия. И така, в тази статия за CASE в SQL ще обсъдя израза CASE, който се използва за извличане на данни въз основа на условия.
Следните теми ще бъдат обхванати в тази статия:
-
- Какво е CASE в SQL?
- СИНтаксис CASE
- Прост пример за CASE израз
- Пример за CASE израз за търсене
Какво е CASE в SQL?
Изразът CASE се използва за извличане на данни въз основа на няколко условия. Така че, след като условието е изпълнено, то ще спре да чете данните и ще върне необходимите резултати. В сценарий, при който не са изпълнени условия, той връща стойностите от клаузата ELSE. Освен това, ако няма ELSE част, тогава не са изпълнени условия и ще върне NULL.
СИНтаксис CASE
CASE WHEN Condition1 THEN Result1 WHEN Condition2 THEN Result2 WHEN Condition3 THEN Result3 WHEN ConditionN THEN ResultN ELSE Result;
Сега, тъй като ви казах, какъв е синтаксисът на оператора CASE в SQL. Нека видим как да използваме израза CASE, със стойности или с условие за търсене.
Разгледайте следната таблица за примера:
Идент. № на ученик | Име | Възраст | Град |
1 | Рохан | 14 | Хайдарабад |
2 | Сонали | 21 | Бангалуру |
3 | Аджай | 13 | Lucknow |
4 | Гийта | 25 | Lucknow |
5 | Шабам | 20 | Делхи |
Прост пример за CASE израз
Simple CASE се използва в SQL, за връщане на данните въз основа на няколко условия и връщане на стойност, когато първото условие е изпълнено.
SELECT StudentID, City, CASE WHEN Age > 20 THEN "Age is greater than " WHEN Age = 20 THEN "Age is equal to 20" ELSE "Age is below 20" END AS AgeValue FROM Students;
При изпълнение на горната заявка ще видите следния изход:
Идент. № на ученик | Град | AgeValue |
1 | Хайдарабад | Възрастта е под 20 години |
2 | Бенгалуру | Възрастта е по-голяма от 20 |
3 | Lucknow | Възрастта е под 20 години |
4 | Lucknow | Възрастта е по-голяма от 20 |
5 | Делхи | Възрастта е равна на 20 |
Пример за CASE израз за търсене
Търсене CASE се използва в SQL, за връщане на данните въз основа на условие, присъстващо в израза CASE. Помислете за сценарий, при който трябва да подредите учениците по възраст. Ако обаче възрастта е между 15 и 18 години, тогава трябва да поръчате по град
SELECT FirstName, Age, City FROM Students ORDER BY ( CASE WHEN Age BETWEEN 15 AND 18 THEN City ELSE Age END );
Тъй като нашата горна таблица „Студенти“ няма налична стойност NULL, при изпълнение на горната заявка ще видите следния изход:
Име | Възраст | Град |
Аджай | 13 | Lucknow |
Рохан | 14 | Хайдарабад |
Shubham | 20 | Делхи |
Сонали | 21 | Бенгалуру |
Гийта | 25 | Lucknow |
С това стигаме до края на тази статия за CASE в SQL. Надявам се, че сте разбрали как да използвате израза CASE за извличане на данни въз основа на условия.. Ако искате да научите повече за MySQL и се запознайте с тази релационна база данни с отворен код, след което разгледайте нашата Обучение за сертифициране на MySQL DBA който идва с обучение на живо от инструктор и реален опит с проекти. Това обучение ще ви помогне да разберете MySQL в дълбочина и ще ви помогне да постигнете майсторство по темата.
Имате въпрос към нас? Моля, споменете го в секцията за коментари на тази статия за „CASE в SQL“ и аз ще се свържа с вас.