U kunt de MONTH()
. gebruiken functie in MySQL om de maand van een datum te retourneren.
In deze context is de maand een waarde tussen 1 en 12 (of 0 voor datums met een maanddeel nul).
Als u bijvoorbeeld een datum opgeeft van 07-10-2018 , de MONTH()
functie retourneert 10 .
Syntaxis
De syntaxis gaat als volgt:
MONTH(date)
Waar date
is de datumwaarde waarvan u de maand wilt retourneren.
Voorbeeld
Hier is een voorbeeld om te demonstreren.
SELECT MONTH('2020-12-18') AS 'Result';
Resultaat:
+--------+ | Result | +--------+ | 12 | +--------+
Als het maandgedeelte een voorloopnul heeft, wordt de voorloopnul weggelaten uit het resultaat. Voorbeeld:
SELECT MONTH('2020-07-18') AS 'Result';
Resultaat:
+--------+ | Result | +--------+ | 7 | +--------+
Een databasevoorbeeld
In dit voorbeeld extraheer ik het maandgedeelte uit een kolom bij het uitvoeren van een query op een database.
USE sakila; SELECT payment_date AS 'Date/Time', MONTH(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Resultaat:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | 5 | +---------------------+-------+
Huidige datum/tijd
Hier is een voorbeeld van het extraheren van het maandgedeelte van de huidige datum en tijd (die wordt geretourneerd met de NOW()
functie).
SELECT NOW(), MONTH(NOW());
Resultaat:
+---------------------+--------------+ | NOW() | MONTH(NOW()) | +---------------------+--------------+ | 2018-06-29 14:44:38 | 6 | +---------------------+--------------+
Een andere manier om dit te doen is door de CURDATE()
. te gebruiken functie, die alleen de datum retourneert (maar niet de tijd).
SELECT CURDATE(), MONTH(CURDATE());
Resultaat:
+------------+------------------+ | CURDATE() | MONTH(CURDATE()) | +------------+------------------+ | 2018-06-29 | 6 | +------------+------------------+