sql >> Databasteknik >  >> RDS >> Mysql

Hur man hämtar datumet från en Datetime-kolumn i MySQL

Problem:

Du vill hämta datumet från en datum- och tidskolumn i en MySQL-databas.

Exempel:

Vår databas har en tabell som heter travel med data i kolumnerna id , first_name , last_name , och timestamp_of_booking .

id förnamn efternamn tidsstämpel_för_bokning
1 Lisa Watson 2019-04-20 14:15:34
2 Tom Smith 2019-03-31 20:10:14
3 Andy Markus 2019-08-03 10:05:45
4 Alice Brun 2019-07-01 12:47:54

För varje resenär får vi endast deras för- och efternamn samt bokningsdatum . (Obs:timestamp_of_booking kolumnen innehåller både datum- och tidsdata.)

Lösning:

Vi använder DATE() fungera. Här är frågan du skulle skriva:

SELECT first_name,
       last_name,
       DATE(timestamp_of_booking) 
         AS  date_of_booking
FROM travel;

Här är resultatet av frågan:

förnamn efternamn bokningsdatum
Lisa Watson 2019-04-20
Tom Smith 2019-03-31
Andy Markus 2019-08-03
Alice Brun 2019-07-01

Diskussion:

I MySQL använder du DATE()-funktionen för att hämta datumet från ett datum- och tidsstämpelvärde. Den här funktionen tar bara ett argument – ​​antingen ett uttryck som returnerar ett datum/datumtid/tidsstämpelvärde eller namnet på en tidsstämpel/datumtidkolumn. (I vårt exempel använder vi en kolumn med tidsstämpel datatyp.)

Funktionen DATE() returnerar endast datuminformationen. I vårt exempel returnerar det "2019-03-31" för Tom Smiths bokningsdatum. Observera att tidsinformationen inte ingår.


  1. Hur ställer jag in ett SQL Server-skripts timeout inifrån skriptet?

  2. Använder SQL LIKE och IN tillsammans

  3. SQL-brandvägg på ett enkelt sätt med ClusterControl &ProxySQL

  4. Fortsätter en transaktion efter fel med primärnyckeln