sql >> Database teknologi >  >> RDS >> Mysql

Sådan får du måneden fra en dato i MySQL

Problem:

Du vil gerne hente måneden fra en dato/datotid-kolonne i en MySQL-database.

Eksempel:

Vores database har en tabel med navnet apartment_rental med data i kolonnerne id , address , floor og start_date .

id adresse etage startdato
1 700 Oak Street 2 2019-03-20
2 295 Main Street 3 2019-05-31
3 506 State Road 1 2019-01-03
4 3949 Rute 31 1 2019-02-01

For hver ledig lejlighed skal du få adressen, gulvet og måneden, hvor den er ledig. Få kun måneden fra start_date kolonne.

Løsning:

Vi bruger MONTH() fungere. Her er den forespørgsel, du ville skrive:

SELECT address,
       floor,
       MONTH(start_date)
         AS  start_month
FROM apartment_rental;

Her er resultatet af forespørgslen:

adresse etage start_måned
700 Oak Street 2 3
295 Main Street 3 5
506 State Road 1 1
3949 Rute 31 1 2

Diskussion:

Brug MONTH() funktion til at hente en måned fra en dato/dato/tidsstempel kolonne i MySQL. Denne funktion tager kun ét argument – ​​enten et udtryk, der returnerer en dato/dato/tidsstempelværdi eller navnet på en dato/dato/tidsstempelkolonne. (I vores eksempel bruger vi start_date kolonne af dato datatype).

MONTH() returnerer måneden som et heltal fra 1 til 12 (1 er januar og 12 er december). I vores eksempel er lejligheden på 700 Oak Street begynder at leje i måned 3, fordi startdatoen er '2019-03-20'


  1. Returner forespørgselsresultater som en kommasepareret liste i Oracle

  2. Sådan tilføjes xml-kodning <?xml version=1.0 encoding=UTF-8?> til xml-output i SQL Server

  3. Brug af arbejdsmappe til kildekontroldatabase

  4. Entity Framework 6 transaktion rollback