CSS: wśród selektorów część 1.
23 października, 2024Przykład kodu CSS: Kod HTML do przykładu: Elementy języka html możemy modyfikować za pomocą wielu znaczników klas, które mogą być...
Czytaj dalejPrzypadki (z ang. Case) są alternatywą wobec instrukcji warunkowej. W standardowych językach programowa takich jak C++, Javascript czy PHP łączone są ze słowem switch, którego jednak nie znajdziemy w SQL’u. Ich zadaniem jest sterowanie wykonaniem kwerendy. Służą do wyboru określonej drogi postępowania, na podstawie otrzymanej wartości. Dla lepszego zrozumienia logiki tego elementu języka SQL, zapraszam do zapoznania się z wpisem z cyklu teoria programowania, poświęconemu właśnie warunkom logicznym. LINK
Aby stworzyć tą konstrukcję użyjemy słowa kluczowego CASE. Następnie określone warunki poprzedzimy słowem WHEN, a polecenia, które na nie odpowiedzą słowem THEN.Cały syntax wygląda więc tak:
CASE column_name WHEN value1 THEN result1 WHEN value2 THEN result2 ... ELSE result END
CASE możemy umieścić w procedurze albo nawet w kwerendzie. Spójrzmy na ten drugi przypadek. Załóżmy ze piszemy skrypt który ma zliczyć płcie po peselu. Będzie wyglądał on tak:
SELECT CASE WHEN RIGHT(studenci.pesel, 2) % 2 = 0 THEN 'Kobieta' WHEN RIGHT(studenci.pesel, 2) % 2 = 1 THEN 'Mężczyzna' END AS `plec`, COUNT(*) AS liczba_osob FROM studenci GROUP BY `plec`;
Dla porównania oto kod, który zrobi to samo, ale bez użycia instrukcji CASE.
SELECT 'Kobiety' AS `plec`, COUNT(`pesel`) AS `ilosc` FROM `studenci` WHERE RIGHT(`pesel`, 2) % 2 = 0 UNION SELECT 'Mężczyźni' AS `plec`, COUNT(`pesel`) AS `ilosc` FROM `studenci` WHERE RIGHT(`pesel`, 2) % 2 = 1;
Jak widać, dzięki instrukcji warunkowej możemy zmienić łączenie dwóch kwerend na jedną. Moim zdaniem taki zapis (z użyciem CASE) jest trochę ładniejszy (bardziej czytelny i zrozumiały). Porównajmy czasy wykonania obu zapytań. Dla zapisu z UNION otrzymujemy wynik 0,0010s, a zapis używający CASE wykonał się w 0,0008s.
Przykład kodu CSS: Kod HTML do przykładu: Elementy języka html możemy modyfikować za pomocą wielu znaczników klas, które mogą być...
Czytaj dalejInstrukcja warunkowa jest elementem języka SQL, który pozwala na automatyczne sterowanie wykonywaniem się kwerend. Szczególnie dobrze sprawdzi się oczywiście w...
Czytaj dalejChoć na pierwszy rzut oka SQL niewiele ma wspólnego z typowymi językami programowania, znajdziemy w nim elementy z nich zaczerpnięte....
Czytaj dalej