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'