NOW() to funkcja SQL zwracająca aktualną datę i czas według zegara serwera bazy danych. W MySQL nie wymaga podawania żadnych argumentów, dlatego zapisuje się ją z pustymi nawiasami:
SELECT NOW();
Przykładowy wynik:
2026-05-09 14:32:10
Dlaczego NOW() nie ma argumentów?
Funkcja NOW() pobiera bieżącą datę i godzinę automatycznie z systemu/serwera bazy danych. Użytkownik nie musi przekazywać tekstu, liczby ani nazwy kolumny.
Dla porównania wiele innych funkcji SQL wymaga argumentu:
UPPER('tekst')— zamienia tekst na wielkie litery,YEAR(data)— wyciąga rok z daty,LEN(tekst)lubLENGTH(tekst)— zwraca długość tekstu, zależnie od systemu bazodanowego.
Przykłady użycia
Dodanie rekordu z aktualną datą utworzenia:
INSERT INTO zamowienia (id_klienta, data_zamowienia)
VALUES (15, NOW());
Wyświetlenie rekordów utworzonych dzisiaj, przykład w MySQL:
SELECT *
FROM logi
WHERE DATE(data_dodania) = CURDATE();
Ważne na egzaminie
W pytaniach egzaminacyjnych należy zwrócić uwagę, czy funkcja potrzebuje danych wejściowych. NOW() nie przetwarza przekazanego tekstu ani kolumny — sama zwraca bieżącą datę i czas. Dlatego spośród funkcji LEN, NOW, YEAR, UPPER poprawną odpowiedzią jest NOW.