Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

MySQL: Rok przestępny

czwartek,

MySQL: Rok przestępny

Prezentowane zapytanie jest zgodne z MySQL i MariaDB, ale nie jest uniwersalne dla innych popularnych systemów DBMS. Problematyczny fragment to SET @year = 2024 – typowy dla MySQL sposób ustawienia zmiennej lokalnej w sesji. W przypadku innych systemów należy używać odpowiednich mechanizmów i składni, które są dla nich przeznaczone.

W języku SQL można sprawdzić, czy dany rok jest przestępny, wykorzystując logikę, która definiuje lata przestępne. Rok jest przestępny, jeśli jest podzielny przez 4, ale nie jest podzielny przez 100, chyba że jest również podzielny przez 400. Pamiętaj, żeby dostosować zmienną @year do swojego zapytania lub kontekstu, w którym chcesz sprawdzić rok.

Aby sprawdzić powyższe warunki, możesz użyć instrukcji CASE. Poniżej znajduje się przykładowe zapytanie, które zwraca wartość True jeśli podany rok (zmienna @year) jest rokiem przestępnym, a False w przeciwnym przypadku:

SET @year  = 2024; -- Przykładowy rok, który chcesz sprawdzić

SELECT
CASE
    WHEN (@year % 4 = 0 AND @year % 100 != 0) OR @year % 400 = 0 THEN 'True'
    ELSE 'False'
END AS IsLeapYear;

W tym skrypcie:

  • @year % 4 = 0 sprawdza, czy rok jest podzielny przez 4.
  • @year % 100 != 0 sprawdza, czy rok nie jest podzielny przez 100.
  • @year % 400 = 0 sprawdza, czy rok jest podzielny przez 400.

Warunki są połączone logicznie tak, aby odzwierciedlać reguły określające lata przestępne. CASE zwróci True, jeśli rok spełnia kryteria roku przestępnego, w przeciwnym razie False.

Artykuł: Harmonogram egzaminów maturalnych

Harmonogram egzaminów maturalnych

Artykuł: Staże w Hiszpanii

Staże w Hiszpanii

Artykuł: Conformité Européenne

Conformité Européenne

Artykuł: Display Stream Compression

Display Stream Compression

Artykuł: High Dynamic Range

High Dynamic Range

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły