Quando usi MySQL, puoi usare DATE()
funzione per estrarre la parte della data da un'espressione di data o ora.
Ecco come funziona.
Sintassi
La sintassi è questa:
DATE(expr)
Dove expr
è l'espressione data o data e ora.
Esempio 1 – Utilizzo di base
Ecco un esempio per dimostrarne l'utilizzo di base.
SELECT DATE('2020-10-01 12:35:06') AS 'Result';
Risultato:
+------------+ | Result | +------------+ | 2020-10-01 | +------------+
Quindi ho fornito un valore che includeva sia la data che l'ora e DATE()
la funzione ha restituito la parte relativa alla data di quel valore.
Esempio 2:utilizzo con NOW()
Se usi una funzione come NOW()
per esempio, puoi usare DATE()
per estrarre solo la parte della data dal valore di ritorno di NOW()
.
SELECT NOW(), DATE(NOW());
Risultato:
+---------------------+-------------+ | NOW() | DATE(NOW()) | +---------------------+-------------+ | 2018-06-25 08:33:42 | 2018-06-25 | +---------------------+-------------+
Tuttavia, in questo caso avremmo potuto semplicemente usare CURDATE()
. Ciò eliminerebbe la necessità di utilizzare DATE()
:
SELECT CURDATE();
Risultato:
+------------+ | CURDATE() | +------------+ | 2018-06-25 | +------------+
Esempio 3:una query al database
La maggior parte delle volte probabilmente utilizzerai questa funzione con valori recuperati da un database. Tali valori possono essere memorizzati come data/ora valore e hai solo bisogno della parte della data.
Ecco un esempio, in cui la colonna del database è archiviata come data/ora valore. Restituisco quel valore e utilizzo anche DATE()
funzione per restituire la parte della data dallo stesso valore:
USE sakila; SELECT payment_date AS 'Date/Time', DATE(payment_date) AS 'Date' FROM payment WHERE payment_id = 1;
Risultato:
+---------------------+------------+ | Date/Time | Date | +---------------------+------------+ | 2005-05-25 11:30:37 | 2005-05-25 | +---------------------+------------+