sql >> Database >  >> RDS >> MariaDB

11 functies om de dag, maand en jaar van een datum in MariaDB te krijgen

MariaDB bevat veel functies voor het werken met datums. Sommige van deze extraheren bepaalde delen van zulke datums en geven ze terug als een string of integer.

Hieronder staan ​​11 functies die u kunt gebruiken om verschillende datumdelen in MariaDB te retourneren.

De Functies

Ten eerste zijn hier de functies:

  • DATE_FORMAT()
  • EXTRACT()
  • DAYNAME()
  • DAYOFMONTH()
  • DAY()
  • DAYOFWEEK()
  • WEEKDAY()
  • DAYOFYEAR()
  • MONTH()
  • MONTHNAME()
  • YEAR()

Hieronder staan ​​voorbeelden van elke functie.

De DATE_FORMAT() Functie

De DATE_FORMAT() Met deze functie kunt u een datum opmaken op basis van een opmaakreeks. De format string geeft aan hoe de datum moet worden opgemaakt. U construeert uw eigen opmaakreeks op basis van een of meer opmaakspecificaties.

Hier is een voorbeeld van het gebruik van DATE_FORMAT() om de dag, de maand en het jaar van een datum te retourneren:

SELECT DATE_FORMAT('2023-07-25', '%W, %D %M %Y');

Resultaat:

+-------------------------------------------+
| DATE_FORMAT('2023-07-25', '%W, %D %M %Y') |
+-------------------------------------------+
| Tuesday, 25th July 2023                   |
+-------------------------------------------+

Het goede aan deze functie is dat je veel variaties van de datum kunt retourneren. U kunt bijvoorbeeld alleen de korte dag- en maandnamen retourneren:

SELECT DATE_FORMAT('2023-07-25', '%a, %D %b %Y');

Resultaat:

+-------------------------------------------+
| DATE_FORMAT('2023-07-25', '%a, %D %b %Y') |
+-------------------------------------------+
| Tue, 25th Jul 2023                        |
+-------------------------------------------+

Of u kunt de dag-maandnummers retourneren:

SELECT DATE_FORMAT('2023-07-25', '%d/%c/%Y');

Resultaat:

+---------------------------------------+
| DATE_FORMAT('2023-07-25', '%d/%c/%Y') |
+---------------------------------------+
| 25/7/2023                             |
+---------------------------------------+

Bekijk deze volledige lijst met opmaakspecificaties voor een volledig overzicht van de opmaakspecificaties die u kunt gebruiken om een ​​opmaakreeks te construeren.

DATE_FORMAT() accepteert ook een optioneel landinstelling-argument dat u kunt gebruiken om de taal van de dag- en maandnamen op te geven. Het is een vrij flexibele functie. Zie DATE_FORMAT() voor meer voorbeelden.

De EXTRACT() Functie

De EXTRACT () functie stelt u in staat om een ​​gespecificeerde eenheid uit de datum te halen. U kunt het dus gebruiken om de dag, de maand en het jaar (evenals andere eenheden) uit de datum te extraheren.

Voorbeeld:

SELECT 
    EXTRACT(DAY FROM '2023-07-25') AS Day,
    EXTRACT(MONTH FROM '2023-07-25') AS Month,
    EXTRACT(YEAR FROM '2023-07-25') AS Year;

Resultaat:

+------+-------+------+
| Day  | Month | Year |
+------+-------+------+
|   25 |     7 | 2023 |
+------+-------+------+

Functies voor het retourneren van een specifieke datumeenheid

MariaDB heeft ook een aantal meer specifieke functies die een specifieke datumeenheid retourneren.

Hieronder vindt u een lijst met functies die de dag, de maand en het jaar vanaf een datum retourneren.

De DAYNAME() Functie

Er zijn nogal wat functies om de dag terug te brengen in MariaDB (en de meeste andere DBMS'en). Dit komt omdat MariaDB moet weten of je de naam van de dag, het dag van het weeknummer, de dag van de maand, de dag van het jaar, enz. wilt.

De DAYNAME() functie retourneert de naam van de weekdag.

Voorbeeld:

SELECT DAYNAME('2023-07-25');

Resultaat:

+-----------------------+
| DAYNAME('2023-07-25') |
+-----------------------+
| Tuesday               |
+-----------------------+

De DAYOFMONTH() Functie

De DAYOFMONTH() functie retourneert de dag van het maandnummer.

Voorbeeld:

SELECT DAYOFMONTH('2023-07-25');

Resultaat:

+--------------------------+
| DAYOFMONTH('2023-07-25') |
+--------------------------+
|                       25 |
+--------------------------+

De DAY() Functie

De DAY() functie is eigenlijk een synoniem voor de DAYOFMONTH() functie.

Voorbeeld:

SELECT DAY('2023-07-25');

Resultaat:

+-------------------+
| DAY('2023-07-25') |
+-------------------+
|                25 |
+-------------------+

Zoals verwacht, hetzelfde resultaat als DAYOFMONTH() .

De DAYOFWEEK() Functie

De DAYOFWEEK() functie retourneert de dag van de week index voor de datum, zoals gespecificeerd door de ODBC-standaard (1 =zondag, 2 =maandag, ..., 7 =zaterdag).

Voorbeeld:

SELECT DAYOFWEEK('2023-07-25');

Resultaat:

+-------------------------+
| DAYOFWEEK('2023-07-25') |
+-------------------------+
|                       3 |
+-------------------------+

Zie WEEKDAY() hieronder voor verschillende indexering.

De WEEKDAY() Functie

De WEEKDAY() functie is vergelijkbaar met DAYOFWEEK() in die zin dat het de weekindex voor de datum retourneert. Het verschil is dat het een andere indexnummering gebruikt (0 =maandag, 1 =dinsdag, ... 6 =zondag).

Voorbeeld:

SELECT WEEKDAY('2023-07-25');

Resultaat:

+-----------------------+
| WEEKDAY('2023-07-25') |
+-----------------------+
|                     1 |
+-----------------------+

De DAYOFYEAR() Functie

De DAYOFYEAR() functie retourneert de dag van het jaar voor de datum, in het bereik 1 tot 366 .

Voorbeeld:

SELECT DAYOFYEAR('2023-07-25');

Resultaat:

+-------------------------+
| DAYOFYEAR('2023-07-25') |
+-------------------------+
|                     206 |
+-------------------------+

De MONTH() Functie

De MONTH() functie retourneert de maand in het bereik 1 tot 12 voor januari tot december, of 0 voor datums met een maanddeel van nul (zoals 0000-00-00 ).

Voorbeeld:

SELECT MONTH('2023-07-25');

Resultaat:

+---------------------+
| MONTH('2023-07-25') |
+---------------------+
|                   7 |
+---------------------+

De MONTHNAME() Functie

Zoals de naam al doet vermoeden, is de MONTHNAME() functie retourneert de naam van de maand. De taal die voor de naam wordt gebruikt, wordt bepaald door de waarde van de lc_time_names systeemvariabele.

Voorbeeld:

SELECT MONTHNAME('2023-07-25');

Resultaat:

+-------------------------+
| MONTHNAME('2023-07-25') |
+-------------------------+
| July                    |
+-------------------------+

Het YEAR() Functie

Het YEAR() functie retourneert het jaargedeelte van de datum.

Voorbeeld:

SELECT YEAR('2023-07-25');

Resultaat:

+--------------------+
| YEAR('2023-07-25') |
+--------------------+
|               2023 |
+--------------------+

  1. Hoe meerdere rapporten met barcode \ of meerdere barcodes in één rapport af te drukken

  2. DBMS-zelfstudie:een complete spoedcursus over DBMS

  3. kolom toevoegen aan mysql-tabel als deze niet bestaat

  4. Hoe MySQL op CentOS te upgraden