SQL -> Ukážkové skripty v SQL -> case
Popis
Príkaz SQL.
Nie vždy sa vo výpise hodia údaje práve v takom tvare, ako v databázovej tabulke. Niekedy potrebujeme zverejniť hodnoty len v intervaloch, inokedy potrebujeme priradiť niektorým hodnotám iný význam a podobne. Nato slúži práve príkaz case.
Ukážka
Zo vzorovej tabuľky Tovar chceme vybrať stĺpce Nazov a Cena.
SELECT Nazov,
case WHEN Cena<=1000 THEN
'Lacná'
WHEN Cena>1000
and Cena<=3000 THEN
'Stredná'
WHEN Cena>3000
and Cena<=8000 THEN
'Drahá'
else 'Extrémne drahá' END
AS Kategoria
FROM Tovar;
Na niektorých databázach sa miesto AS používa znak '=', teda inde by mohol rovnaký príkaz vypadať takto:
SELECT Nazov,
'Kategoria' =
case WHEN Cena<=1000 THEN
'Lacná'
WHEN Cena>1000
and Cena<=3000 THEN
'Stredná'
WHEN Cena>3000
and Cena<=8000 THEN
'Drahá'
else 'Extrémne drahá' END
FROM Tovar;
Dostaneme:
Nazov
| Kategoria
|
---|
Kuchynský stôl
| Stredná
|
Stolička
| Lacná
|
Stolička
| Lacná
|
Stolička
| Lacná
|
Odkazy
- Niektoré databázy používajú miesto tohoto príkazu príkaz DECODE
- Ak hľadáte podobný príkaz pre jazyk PHP, pozrite SWITCH