sql >> Databáze >  >> RDS >> MariaDB

8 způsobů, jak přidat mikrosekundy k hodnotě data a času v MariaDB

Pokud potřebujete přidat jednu nebo více mikrosekund k hodnotě datetime v MariaDB, zde je 8 možností, které je třeba zvážit.

DATE_ADD() Funkce

DATE_ADD() Funkce umožňuje přidat částku k výrazu datum nebo datum a čas. To zahrnuje přidávání časových částí, jako jsou hodiny, minuty, sekundy, mikrosekundy atd.

Příklad:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND);

Výsledek:

+----------------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |
+----------------------------------------------------------+
| 2021-05-01 10:00:00.000035                               |
+----------------------------------------------------------+

V tomto případě jsem k výrazu datetime přidal 35 mikrosekund. Všimněte si, že SECOND klíčové slovo zůstává nemnožné bez ohledu na to, zda přidávám jednu sekundu nebo více.

Můžete si také všimnout, že část mikrosekund nebyla v mé původní hodnotě data a času, ale byla přidána, jakmile jsem přidal mikrosekundy.

Podobně, co se stane, když poskytnu pouze datum:

SELECT DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND);

Výsledek:

+-------------------------------------------------+
| DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND) |
+-------------------------------------------------+
| 2021-05-01 00:00:00.000035                      |
+-------------------------------------------------+

Časová část je připojena k výsledku a předpokládá se, že počáteční čas byl 00:00:00.000000 .

K přidání více jednotek můžete také použít složenou jednotku data a času. Pokud byste například chtěli přidat 1 minutu a 30 sekund, můžete to udělat takto:

SELECT 
DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND);

Výsledek:

+---------------------------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND) |
+---------------------------------------------------------------------+
| 2021-05-01 10:00:01.300000                                          |
+---------------------------------------------------------------------+

Úplný seznam jednotek data a času naleznete v části Jednotky data a času MariaDB.

ADDDATE() Funkce

Dalším způsobem, jak přidat sekundy do výrazu datetime, je použít ADDDATE() funkce. Tato funkce má dvě syntaxe:

  1. Jedna syntaxe vám umožňuje přidat k datu několik dní, což zde neděláme.
  2. Další syntaxe je stejná jako u DATE_ADD() funkce výše. Při použití této syntaxe ADDDATE() je synonymem pro DATE_ADD() .

Příklad:

SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND);

Výsledek:

+---------------------------------------------------------+
| ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |
+---------------------------------------------------------+
| 2021-05-01 10:00:00.000035                              |
+---------------------------------------------------------+

DATE_SUB() Funkce

DATE_SUB() funkce umožňuje odečíst částka k výrazu datum/datum a čas. Pokud však zadáte zápornou hodnotu k odečtení, skončí to tak, že bude přičteno na datum/čas.

Příklad:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);

Výsledek:

+-----------------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |
+-----------------------------------------------------------+
| 2021-05-01 10:00:00.000035                                |
+-----------------------------------------------------------+

SUBDATE() Funkce

SUBDATE() funkce je synonymem pro DATE_SUB() při použití následující syntaxe.

Příklad:

SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);

Výsledek:

+----------------------------------------------------------+
| SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |
+----------------------------------------------------------+
| 2021-05-01 10:00:00.000035                               |
+----------------------------------------------------------+

Znaménko + Operátor

Další možností je použít + operátor.

+ operátor se používá k provádění sčítání a můžeme jej použít pro data, spolu s příslušnou jednotkou data/času k přidání určitého počtu mikrosekund k našemu výrazu datetime.

Příklad:

SELECT '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND;

Výsledek:

+-------------------------------------------------+
| '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND |
+-------------------------------------------------+
| 2021-05-01 10:00:00.000035                      |
+-------------------------------------------------+

- Operátor

- operátor lze použít k odečtení částky od data. Ale pokud se používá k odečtení záporného čísla, výsledkem je kladná částka přidaná k výrazu datetime:

SELECT '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND;

Výsledek:

+--------------------------------------------------+
| '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND |
+--------------------------------------------------+
| 2021-05-01 10:00:00.000035                       |
+--------------------------------------------------+

ADDTIME() Funkce

Můžete použít ADDTIME() funkce pro přidání počtu milsekund k výrazu datetime.

Příklad:

SELECT ADDTIME('2021-05-01 10:00:00', '00:00:00.123456');

Výsledek:

+---------------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '00:00:00.123456') |
+---------------------------------------------------+
| 2021-05-01 10:00:00.123456                        |
+---------------------------------------------------+

Jednou z výhod této funkce je, že můžete změnit i jiné časové jednotky, jako jsou hodiny, sekundy atd.

SUBTIME() Funkce

Alternativně to můžete přepnout a použít SUBTIME() se zápornou hodnotou, pokud si to přejete:

SELECT SUBTIME('2021-05-01 10:00:00', '-00:00:00.123456');

Výsledek:

+----------------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '-00:00:00.123456') |
+----------------------------------------------------+
| 2021-05-01 10:00:00.123456                         |
+----------------------------------------------------+

Další jednotky data a času

Výše uvedené příklady přidávají k hodnotě datetime několik mikrosekund, ale můžeme použít stejné techniky k přidání libovolné jednotky data/času. Úplný seznam jednotek data a času, které lze použít s výše uvedenými funkcemi a operátory, najdete v části MariaDB Date and Time Units.


  1. Jak změnit zápornou hodnotu na kladnou v Oracle?

  2. Jak vygenerovat balíček API tabulky v Oracle SQL Developer?

  3. Proč PostgreSQL nevrací hodnoty null, když je podmínka <> pravdivá

  4. Funkce SCHEMA() v MySQL