СКЛ ЦАСЕ изјава

Тхе CASE изјава у СКЛ је свестрани условни израз који нам омогућава да инкорпорирамо условна логика директно у оквиру наших упита. Омогућава вам да вратите специфичне резултате на основу одређених услова омогућавајући динамичке излазе упита. Било да треба креирајте нове колоне измените постојеће или прилагодите излаз ваших упита ЦАСЕ изјава могу све то да поднесу.

У овом чланку ћемо научити СКЛ ЦАСЕ израз детаљно са јасним примерима и случајевима коришћења који показују како да искористите ову функцију да побољшате своје СКЛ упите.

Наредба ЦАСЕ у СКЛ-у

  • Тхе CASE изјава у СКЛ је условни израз који вам омогућава да извршите условну логику у оквиру упита.
  • Обично се користи за креирање нових колона заснованих на условној логици да обезбеди прилагођене вредности или контролише излазе упита на основу одређених услова.
  • Ако ниједан услов није тачан онда ЕЛСЕ део ће бити извршен. Ако не постоји ЕЛСЕ део онда се враћа НУЛЛ.

Синтакса:

Да бисте користили наредбу ЦАСЕ у СКЛ-у, користите следећу синтаксу:

ЦАСЕ цасе_валуе
КАДА услов ОНДА резултат1
КАДА услов ОНДА резултат2
...
Други резултат
ЕНД ЦАСЕ;

Пример СКЛ ЦАСЕ изјаве

Погледајмо неке примере наредбе ЦАСЕ у СКЛ-у да бисмо је боље разумели.

Хајде да направимо демо СКЛ табелу која ће се користити у примерима.

Демо СКЛ база података

Користићемо овај узорак СКЛ табеле за наше примере на СКЛ наредби ЦАСЕ:

ЦустомерИД ЦустомерНаме Презиме Држава Старост Телефон
1 Доубт Тхакур Индија 23 кккккккккк
2 Сафе Цхопра Аустралија 21 кккккккккк
3 Навеен Туласи Шри Ланка 24 кккккккккк
4 Адитиа Арпан Аустрија 21 кккккккккк
5 Нисхант. Салцхицхас С.А. Јаин Спаин 22 кккккккккк

Можете креирати исту базу података у свом систему писањем следећег МиСКЛ упита:

 CREATE TABLE Customer( CustomerID INT PRIMARY KEY CustomerName VARCHAR(50) LastName VARCHAR(50) Country VARCHAR(50) Age int(2) Phone int(10) ); -- Insert some sample data into the Customers table INSERT INTO Customer (CustomerID CustomerName LastName Country Age Phone) VALUES (1 'Shubham' 'Thakur' 'India''23''xxxxxxxxxx') (2 'Aman ' 'Chopra' 'Australia''21''xxxxxxxxxx') (3 'Naveen' 'Tulasi' 'Sri lanka''24''xxxxxxxxxx') (4 'Aditya' 'Arpan' 'Austria''21''xxxxxxxxxx') (5 'Nishant. Salchichas S.A.' 'Jain' 'Spain''22''xxxxxxxxxx');   

Пример 1: Једноставан ЦАСЕ израз

У овом примеру користимо наредбу ЦАСЕ

упит:

 SELECT CustomerName Age CASE WHEN Country = 'India' THEN 'Indian' ELSE 'Foreign' END AS Nationality FROM Customer;  

Излаз:

ЦустомерНаме Старост националност
Доубт 23 Индијанац
Сафе 21 страним
Навеен 24 страним
Адитиа 21 страним
Нисхант. Салцхицхас С.А. 22 страним

Пример 2: СКЛ СЛУЧАЈ Када је више услова

Можемо додати више услова у наредбу ЦАСЕ коришћењем вишеструких КАДА клаузуле.

упит:

 SELECT CustomerName Age CASE WHEN Age> 22 THEN 'The Age is greater than 22' WHEN Age = 21 THEN 'The Age is 21' ELSE 'The Age is over 30' END AS QuantityText FROM Customer;  

Излаз:

ЦустомерНаме Старост КуантитиТект
Доубт 23 Старост је већа од 22 године
Сафе 21 Старост је 21
Навеен 24 Старост је већа од 22 године
Адитиа 21 Старост је 21
Нисхант. Салцхицхас С.А. 22 Старост је преко 30 година

Пример 3: Наредба ЦАСЕ са клаузулом ОРДЕР БИ

Узмимо табелу купаца која садржи ЦустомерИД Име корисника Презиме Држава Старост и телефон. Податке из табеле купаца можемо проверити коришћењем ОРДЕР БИ клаузулу са наредбом ЦАСЕ.

упит:

 SELECT CustomerName Country FROM Customer ORDER BY (CASE WHEN Country IS 'India' THEN Country ELSE Age END);  

Излаз:

ЦустомерНаме Држава
Сафе Аустралија
Адитиа Аустрија
Нисхант. Салцхицхас С.А. Спаин
Навеен Шри Ланка
Доубт Индија

Важне тачке о изјави ЦАСЕ

  • СКЛ ЦАСЕ израз је условни израз који дозвољава извршавање различитих упита на основу специфицираних услова.
  • Увек треба да постоји а СЕЛЕЦТ у изјави ЦАСЕ.
  • ЕНД ЕЛСЕ је опциона компонента али КАДА ОНДА ови случајеви морају бити укључени у изјаву ЦАСЕ.
  • Можемо направити било коју условну изјаву користећи било који условни оператор (нпр ГДЈЕ ) између КАДА и ОНДА. Ово укључује низање више условних изјава помоћу И и ИЛИ.
  • Можемо укључити више наредби ВХЕН и ЕЛСЕ исказ да бисмо се супротставили неадресираним условима.

Закључак

Тхе CASE наредба обезбеђује робустан механизам за укључивање условне логике у СКЛ упите. Коришћењем ове изјаве можете да рукујете разним условима и ефикасно прилагодите излаз ваших упита. Разумевање како применити CASE изрази вам омогућавају да извршите софистициранију манипулацију подацима и извештавање, чинећи ваше СКЛ упите динамичнијим и прилагодљивијим различитим сценаријима.

Креирај квиз