sql >> Databasteknik >  >> RDS >> MariaDB

Hur PERIOD_DIFF() fungerar i MariaDB

I MariaDB, PERIOD_DIFF() är en inbyggd datum- och tidsfunktion som returnerar antalet månader mellan två perioder.

Syntax

Syntaxen ser ut så här:

PERIOD_DIFF(P1,P2)

Där P1 och P2 är perioderna att få skillnaden mellan.

Båda argumenten har formatet ÅÅMM eller ÅÅÅÅMM. De är inte datumvärden.

Exempel

Här är ett exempel:

SELECT PERIOD_DIFF(202108, 202101);

Resultat:

+-----------------------------+
| PERIOD_DIFF(202108, 202101) |
+-----------------------------+
|                           7 |
+-----------------------------+

I det här exemplet är det sju månaders skillnad mellan de två perioderna.

Byt beställning

Om den första perioden är en tidigare period till den andra, är resultatet ett negativt värde.

Så här händer när jag ändrar ordningen på argumenten i föregående exempel:

SELECT PERIOD_DIFF(202101, 202108);

Resultat:

+-----------------------------+
| PERIOD_DIFF(202101, 202108) |
+-----------------------------+
|                          -7 |
+-----------------------------+

Tvåsiffriga år

Om något av argumenten innehåller ett tvåsiffrigt årtal konverteras värden från 00 till 69 till från 2000 till 2069, medan värden från 70 konverteras till 1970 och uppåt.

Exempel:

SELECT 
    PERIOD_DIFF(6911, 6912),
    PERIOD_DIFF(6911, 7001);

Resultat:

+-------------------------+-------------------------+
| PERIOD_DIFF(6911, 6912) | PERIOD_DIFF(6911, 7001) |
+-------------------------+-------------------------+
|                      -1 |                    1198 |
+-------------------------+-------------------------+

Argument saknas

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

SELECT PERIOD_DIFF();

Resultat:

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

Och ett annat exempel:

SELECT PERIOD_DIFF( 6912 );

Resultat:

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

  1. SQLServer IDENTITY Kolumn med text

  2. Hur man installerar Adminer på sin egen app

  3. Mina favoritpostgreSQL-tillägg - del två

  4. använd kommandot database_name i PostgreSQL