sql >> Databasteknik >  >> RDS >> MariaDB

Hur MAKEDATE() fungerar i MariaDB

I MariaDB, MAKEDATE() är en inbyggd datum- och tidsfunktion som returnerar ett datum, baserat på år och dag på året som anges som argument.

Syntax

Syntaxen ser ut så här:

MAKEDATE(year,dayofyear)

Exempel

Här är ett exempel:

SELECT MAKEDATE(2030, 10);

Resultat:

+--------------------+
| MAKEDATE(2030, 10) |
+--------------------+
| 2030-01-10         |
+--------------------+

Och en till:

SELECT MAKEDATE(2030, 100);

Resultat:

+---------------------+
| MAKEDATE(2030, 100) |
+---------------------+
| 2030-04-10          |
+---------------------+

Tillbaka ett datum under ett kommande år

Om det andra argumentet (dagen på året) är större än antalet dagar på året, är det resulterande datumet ett framtida år.

Exempel:

SELECT
    MAKEDATE(2030, 366),
    MAKEDATE(2030, 700),
    MAKEDATE(2030, 7000);

Resultat:

+---------------------+---------------------+----------------------+
| MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) |
+---------------------+---------------------+----------------------+
| 2031-01-01          | 2031-12-01          | 2049-03-01           |
+---------------------+---------------------+----------------------+

Noll dagar

Det andra argumentet (dagen på året) måste vara större än 0 eller så är resultatet null .

Exempel:

SELECT
    MAKEDATE(2030, 366),
    MAKEDATE(2030, 700),
    MAKEDATE(2030, 7000);

Resultat:

+---------------------+---------------------+----------------------+
| MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) |
+---------------------+---------------------+----------------------+
| 2031-01-01          | 2031-12-01          | 2049-03-01           |
+---------------------+---------------------+----------------------+

Argument saknas

Anropar MAKEDATE() med fel antal argument, eller utan att skicka några argument, resulterar i ett fel:

SELECT MAKEDATE();

Resultat:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'

Och ett annat exempel:

SELECT MAKEDATE( 2020, 10, 20 );

Resultat:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'

Gör en tid

Se även MAKETIME() för att konstruera ett tidsvärde från dess timmar, minuter och sekunder.


  1. hur man Flashback när vi har dataguard

  2. SQL CREATE TABLE Syntax – Listad av DBMS

  3. Skapa en webbapp från grunden med Python Flask och MySQL:Del 5

  4. Använd IDENT_CURRENT() för att returnera det aktuella identitetsvärdet på en identitetskolumn i SQL Server