Title | CASE - Konstrukcja case w sql. |
---|---|
Course | Systemy baz danych |
Institution | Politechnika Lódzka |
Pages | 2 |
File Size | 25.6 KB |
File Type | |
Total Downloads | 71 |
Total Views | 672 |
Download CASE - Konstrukcja case w sql. PDF
/*Konstrukcja CASE: SELECT (nazwy kolumn) CASE WHEN (warunek 1) THEN (ciąg poleceń 1) WHEN (warunek 2) THEN (ciąg poleceń 2) .... [ELSE(ciąg poleceń gdzy żaden z powyższych warunków nie jest spełniony)] END FROM (nazwa tabeli) */ /*przykład*/
SELECT imie, nazwisko, dzial_id from pracownik; SELECT * FROM dzial; /* wyświetlimy dane z tabeli pracownik z dodatkową kolumną, jeżeli pracowni jest z działu sprzedaży wyświetli się 'sprzedaż'*/ SELECT pracownik.imie, pracownik.dzial_id, CASE WHEN pracownik.dzial_id=1 THEN 'sprzedaż' END FROM pracownik;
/* Dodajmy napis 'inny dział' w przeciwnym przypadku*/ SELECT pracownik.imie, pracownik.dzial_id, CASE WHEN pracownik.dzial_id=1 THEN 'sprzedaż' ELSE 'inny dział' END FROM pracownik; /*Stworzyć tabelę tymczawą która będzie przechowywała imię, nawzisko i zmienną typu znakowego 'stary pracownik' dla osób zatrudnionych przed lub w 2018 roku i 'nowy pracownik' dla innych */
CREATE TABLE #dane_pracownika (
imie varchar(50), nazwisko varchar(50), zatrudnienie varchar(50) ) SELECT * from #dane_pracownika; SELECT pracownik.imie, pracownik.nazwisko, pracownik.data_zatrudnienia, CASE WHEN YEAR(pracownik.data_zatrudnienia)>2018 THEN 'nowy pracownik' END FROM pracownik; INSERT INTO #dane_pracownika SELECT pracownik.imie, pracownik.nazwisko, CASE WHEN YEAR(pracownik.data_zatrudnienia)>2018 THEN 'nowy pracownik' END FROM pracownik; SELECT * from #dane_pracownika; /*Wypisać nazwy sklepów wraz z ilością pracowników przylisanych do ich obsługi, posortować malejąco względem liczby pracowników*/ /*wypisać nazwy firm, które mają przyporządkowanych najmniej osób do obsługi*/ /*Wypisać pracownika który obsługuje najwięcej i najmniej klientów*/...