Przejdź do treści głównej
INF.03Bazy Danych

Funkcje daty i czasu w SQL (NOW, CURDATE, DATEDIFF, YEAR)

Funkcje umożliwiające pobieranie bieżącego czasu oraz wykonywanie operacji matematycznych i porównań na polach typu DATE i DATETIME.

Główne funkcje daty w MySQL:

  • NOW() – zwraca bieżącą datę i godzinę (YYYY-MM-DD HH:MM:SS).
  • CURDATE() – zwraca bieżącą datę (YYYY-MM-DD).
  • YEAR(data), MONTH(data), DAY(data) – wyciąga odpowiednio rok, miesiąc lub dzień.
  • DATEDIFF(data1, data2) – oblicza różnicę w dniach między dwiema datami (data1 - data2).
SQL
-- Wyszukanie osób pełnoletnich:
SELECT imie, nazwisko, data_urodzenia
FROM uzytkownicy
WHERE YEAR(CURDATE()) - YEAR(data_urodzenia) >= 18;

-- Obliczenie liczby dni do końca subskrypcji:
SELECT id, DATEDIFF(data_waznosci, CURDATE()) AS pozostalo_dni
FROM subskrypcje;

Najczęstsze pułapki na egzaminie INF.03:

  • Standardowy format zapisu daty w SQL to RRRR-MM-DD (np. '2026-08-19').

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Funkcje daty i czasu w SQL (NOW, CURDATE, DATEDIFF, YEAR) lub rozpocznij trening.