sql >> Databasteknik >  >> RDS >> MariaDB

Hur ADDTIME() fungerar i MariaDB

I MariaDB, ADDTIME() är en inbyggd datum- och tidsfunktion som lägger till ett belopp till ett uttryck för tid eller datum.

Det låter dig ändra ett tid- eller datumuttryck genom att skicka det uttrycket, såväl som ett tidsuttryck att lägga till uttrycket. Du kan skicka ett negativt belopp om du behöver subtrahera från tidsuttrycket.

Syntax

Syntaxen ser ut så här:

ADDTIME(expr1,expr2)

Där expr1 är ett tid- eller datetime-uttryck och expr2 är ett tidsuttryck.

Exempel

Här är ett exempel:

SELECT ADDTIME('10:00:00', '02:30:45');

Resultat:

+---------------------------------+
| ADDTIME('10:00:00', '02:30:45') |
+---------------------------------+
| 12:30:45                        |
+---------------------------------+

Uttryck för datum och tid

Det första argumentet kan också vara ett datetime-uttryck:

SELECT ADDTIME('2021-05-01 10:00:00', '22:30:45');

Resultat:

+--------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '22:30:45') |
+--------------------------------------------+
| 2021-05-02 08:30:45                        |
+--------------------------------------------+

I det här fallet räckte den tillagda tiden för att flytta fram datumet till nästa dag, och detta återspeglas i resultatet.

Tidsuttryck i ett lösare format

MariaDB tillåter tilldelning av tider i lösare format, som att tappa inledande nollor och ge ett värde för dagen.

Därför kan vi göra detta:

SELECT ADDTIME('2021-05-01 10:00:00', '366 1:1:1.123456');

Resultat:

+----------------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '366 1:1:1.123456') |
+----------------------------------------------------+
| 2022-05-02 11:01:01.123456                         |
+----------------------------------------------------+

Negativa intervall

Om du anger ett negativt intervall för dagdelen subtraherar det beloppet från tid/datumtid.

Exempel:

SELECT ADDTIME('2021-05-01 10:00:00', '-366 1:1:1.123456');

Resultat:

+-----------------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '-366 1:1:1.123456') |
+-----------------------------------------------------+
| 2020-04-30 08:58:58.876544                          |
+-----------------------------------------------------+

Nollargument

Om något argument är null , resultatet är null :

SELECT 
    ADDTIME('10:00:00', null),
    ADDTIME(null, '02:30:45'),
    ADDTIME(null, null);

Resultat:

+---------------------------+---------------------------+---------------------+
| ADDTIME('10:00:00', null) | ADDTIME(null, '02:30:45') | ADDTIME(null, null) |
+---------------------------+---------------------------+---------------------+
| NULL                      | NULL                      | NULL                |
+---------------------------+---------------------------+---------------------+

Argument saknas

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

SELECT ADDTIME();

Resultat:

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

  1. Klassen hittades inte laddar JDBC org.postgresql.Driver

  2. Hur man returnerar frågeresultat som en kommaseparerad lista i PostgreSQL

  3. Tabell som ett argument för en PostgreSQL-funktion

  4. Skala PostgreSQL med Connection Poolers &Load Balancers