sql >> Database teknologi >  >> RDS >> MariaDB

Sådan får du slutningen af ​​måneden i MariaDB

I MariaDB kan vi bruge LAST_DAY() funktion for at returnere den sidste dag i en given måned.

Dette kan være den sidste dag i den aktuelle måned eller den sidste dag i måneden baseret på en dato, som vi angiver.

Eksempel

SELECT LAST_DAY('2030-07-15');

Resultat:

2030-07-31

I dette tilfælde har den angivne måned (juli) 31 dage, så vi får den 31. i den måned.

Her er den med årets forskellige måneder:

SELECT 
    LAST_DAY('2030-01-15') AS "Jan",
    LAST_DAY('2030-02-15') AS "Feb",
    LAST_DAY('2030-03-15') AS "Mar",
    LAST_DAY('2030-04-15') AS "Apr",
    LAST_DAY('2030-05-15') AS "May",
    LAST_DAY('2030-06-15') AS "Jun",
    LAST_DAY('2030-07-15') AS "Jul",
    LAST_DAY('2030-08-15') AS "Aug",
    LAST_DAY('2030-09-15') AS "Sep",
    LAST_DAY('2030-10-15') AS "Oct",
    LAST_DAY('2030-11-15') AS "Nov",
    LAST_DAY('2030-12-15') AS "Dec";

Resultat:

+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+
| Jan        | Feb        | Mar        | Apr        | May        | Jun        | Jul        | Aug        | Sep        | Oct        | Nov        | Dec        |
+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+
| 2030-01-31 | 2030-02-28 | 2030-03-31 | 2030-04-30 | 2030-05-31 | 2030-06-30 | 2030-07-31 | 2030-08-31 | 2030-09-30 | 2030-10-31 | 2030-11-30 | 2030-12-31 |
+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+

Databaseeksempel

Her er et eksempel, der bruger datoer fra en database:

SELECT 
    rental_date, 
    CAST(LAST_DAY(rental_date) AS DATE) AS "End of Month"
FROM rental WHERE customer_id = 459 
LIMIT 10;

Resultat:

+---------------------+--------------+
| rental_date         | End of Month |
+---------------------+--------------+
| 2005-05-24 22:54:33 | 2005-05-31   |
| 2005-06-17 02:50:51 | 2005-06-30   |
| 2005-06-17 09:38:22 | 2005-06-30   |
| 2005-06-17 16:40:33 | 2005-06-30   |
| 2005-06-20 02:39:21 | 2005-06-30   |
| 2005-06-20 12:35:44 | 2005-06-30   |
| 2005-06-20 12:42:00 | 2005-06-30   |
| 2005-06-21 02:39:44 | 2005-06-30   |
| 2005-07-06 00:22:29 | 2005-07-31   |
| 2005-07-08 02:51:23 | 2005-07-31   |
+---------------------+--------------+

I dette tilfælde brugte jeg også CAST() funktion til at caste datetime værdi til en date værdi.


  1. Hvordan AI vil ændre softwareudvikling og -test

  2. Afkortning af en tabel i en lagret procedure

  3. Kan ikke oprette enhedsdatamodel - ved hjælp af MySql og EF6

  4. Sådan dræber du en kørende SELECT-sætning