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 | +---------------------+------------+