główna strona
wróć
[MySQL] Jak pobrać datę i czas w bazie danych MySQL?
Ostatnia zmiana: 22.11.2008, Autor artykułu: Waldemar Miotk
artykul-0018.jpg

Często potrzebujemy sprawdzić aktualną datę lub czas w trakcie wykonywania zapytań SQL. Najczęściej wykorzystuje się to do zapisania w bazie daty i godziny wykonania danej czynności (np. dopisania lub modyfikacji danych), chociaż również do wielu innych czynności. W MySQL mamy kilka możliwości.

Podstawową i najprostszą funkcją podającą aktualną datę oraz godzinę jest funkcja NOW().

NOW() -  w standardowym wywołaniu podaje aktualną datę i czas w postaci ciągu tekstowego o strukturze (RRRR-MM-DD HH:MI:SS), gdzie RRRR-rok czterocyfrowy, MM-miesiąc dwucyfrowy, DD-dzień dwucyfrowy, HH-godzina dwucyfrowa, MI-minuta dwucyfrowa, SS-sekunda dwucyfrowa.

NOW() może podawać też wynik w postaci liczbowej w formacie : RRRRMMDDHHMISS.

Format danych w jakim wynik jest podawany jest zależny od kontekstu w którym funkcja zostanie użyta. Zamiast funkcji NOW() można używać funkcji SYSDATE() lub CURRENT_TIMESTAMP - to ostatnie zapewnia kompatybilność z innymi bazami (np. Oracle,DB2,MS SQL).

SELECT NOW(); # wynik : 2008-06-20 10:15:34
SELECT SYSDATE(); # wynik : 2008-06-20 10:15:34
SELECT CURRENT_TIMESTAMP; # wynik : 2008-06-20 10:15:34


Aby pobrać tylko datę używamy funkcji CURDATE().

CURDATE() - w standardowym wywołaniu podaje aktualną datę w postaci ciągu tekstowego o strukturze (RRRR-MM-DD).

CURDATE() może podawać też wynik w postaci liczbowej w formacie : RRRRMMDD.

Format danych w jakim wynik jest podawany jest zależny od kontakstu w którym funkcja zostanie użyta. Zamiast funkcji CURDATE() można używać CURRENT_DATE co zapewnia kompatybilność z innymi bazami.

SELECT CURDATE(); # wynik : 2008-06-20
SELECT CURRENT_DATE; # wynik : 2008-06-20

Aby pobrać tylko czas używamy funkcji CURTIME().

CURTIME() - w standardowym wywołaniu podaje aktualny czas w postaci ciągu tekstowego o strukturze (HH:MI:SS).

CURTIME() może podawać też wynik w postaci liczbowej w formacie : HHMISS.

Format danych w jakim wynik jest podawany jest zależny od kontekstu w którym funkcja zostanie użyta. Zamiast funkcji CURTIME() można używać CURRENT_TIME co zapewnia kompatybilność z innymi bazami.

SELECT CURTIME(); # wynik : 10:30:44
SELECT CURRENT_TIME; #wynik : 10:30:44

 
Komentarze(1)

Podpis:
W celu potwierdzenia, zaznacz pole pod znakiem: U
Capcha
ok - IP: xx.xxx.173.130, Data: 07.02.2023 18:20:09
ok
(c)2007-2016 Waldemar Miotk - ostatnia aktualizacja silnika 06.02.2016 - Twój IP: 3.136.23.132. Ta strona, aby lepiej działać, używa plików cookie przechowywanych na komputerach użytkowników. Wszystkie prawa do tekstów zamieszczonych na stronie są zastrzeżone, chyba że przy konkretnym tekście znajduje się inna informacja.
go up