sql >> Database >  >> RDS >> MariaDB

Hoe MAKEDATE() werkt in MariaDB

In MariaDB, MAKEDATE() is een ingebouwde datum- en tijdfunctie die een datum retourneert, gebaseerd op het jaar en de dag van het jaar die als argumenten zijn opgegeven.

Syntaxis

De syntaxis gaat als volgt:

MAKEDATE(year,dayofyear)

Voorbeeld

Hier is een voorbeeld:

SELECT MAKEDATE(2030, 10);

Resultaat:

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

En nog een:

SELECT MAKEDATE(2030, 100);

Resultaat:

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

Retourneer een datum in een toekomstig jaar

Als het tweede argument (dag van het jaar) groter is dan het aantal dagen in het jaar, dan is de resulterende datum een ​​toekomstig jaar.

Voorbeeld:

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

Resultaat:

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

Nul dagen

Het tweede argument (dag van het jaar) moet groter zijn dan 0 of het resultaat is null .

Voorbeeld:

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

Resultaat:

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

Ontbrekend argument

MAKEDATE() . aanroepen met het verkeerde aantal argumenten, of zonder het doorgeven van argumenten, resulteert in een fout:

SELECT MAKEDATE();

Resultaat:

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

En nog een voorbeeld:

SELECT MAKEDATE( 2020, 10, 20 );

Resultaat:

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

Maak een tijd

Zie ook MAKETIME() voor het construeren van een tijdwaarde uit de uren, minuten en seconden.


  1. Hoe een Heroku PG-dump in een lokale machine te importeren?

  2. Updates voor PostgreSQL-testtools met benchmarkarchief

  3. FLOOR() Voorbeelden in SQL Server

  4. android.database.sqlite.SQLiteCantOpenDatabaseException:onbekende fout (code 14):kon database niet openen