sql >> Databasteknik >  >> RDS >> Mysql

Hur man får månaden från ett datum i MySQL

Problem:

Du vill få månaden från en kolumn för datum/datum och tid i en MySQL-databas.

Exempel:

Vår databas har en tabell som heter apartment_rental med data i kolumnerna id , address , floor och start_date .

id adress våningen startdatum
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 Route 31 1 2019-02-01

För varje ledig lägenhet, få adressen, våningen och månaden när den är ledig. Få bara månaden från start_date kolumn.

Lösning:

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

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

Här är resultatet av frågan:

adress våningen start_månad
700 Oak Street 2 3
295 Main Street 3 5
506 State Road 1 1
3949 Route 31 1 2

Diskussion:

Använd MONTH() funktion för att hämta en månad från en kolumn datum/datum/tidsstämpel i MySQL. Den här funktionen tar bara ett argument – ​​antingen ett uttryck som returnerar ett datum/datum/tidsstämpelvärde eller namnet på en kolumn för datum/datum/tidsstämpel. (I vårt exempel använder vi start_date kolumn datum datatyp).

MONTH() returnerar månaden som ett heltal från 1 till 12 (1 är januari och 12 är december). I vårt exempel, lägenheten på 700 Oak Street kommer att börja hyra i månad 3 eftersom startdatumet är '2019-03-20'


  1. Rotera/pivotera tabell med aggregering i Oracle

  2. Hur ignorerar jag et-tecken i ett SQL-skript som körs från SQL Plus?

  3. Konvertera textvärde i SQL Server från UTF8 till ISO 8859-1

  4. Bästa metoder för SQL varchar-kolumnlängd