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

8 způsobů, jak přidat dny k datu v MariaDB

MariaDB poskytuje několik způsobů, jak přidat určitý počet dní k danému datu. Můžete například chtít přidat k datu 10 dní nebo 30 dní nebo dokonce jen 1 den. Naštěstí to MariaDB usnadňuje.

Zde je 8 způsobů, jak přidat počet dní k danému datu v MariaDB.

ADDDATE() Funkce

Začněme s ADDDATE() funkce.

Tato funkce má dvě různé syntaxe. První syntaxe poskytuje stručný způsob přidání určitého počtu dní k datu.

Příklad:

SELECT ADDDATE('2021-05-01', 10); 

Výsledek:

+---------------------------+| ADDDATE('2021-05-01', 10) |+---------------------------+| 2021-05-11 |+---------------------------+

Pomocí této syntaxe poskytujeme dva argumenty. První argument je datum a druhý je počet dní, které se mají k tomuto datu přidat.

ADDDATE() Funkce – Syntaxe 2

ADDDATE() funkce má také podrobnější syntaxi. Tato syntaxe nám umožňuje být jasnější v tom, jak přidáváme dny k datu.

Příklad:

SELECT ADDDATE('2021-05-01', INTERVAL 10 DAY); 

Výsledek:

+----------------------------------------+| ADDDATE('2021-05-01', INTERVAL 10 DNŮ) |+----------------------------------- ------+| 2021-05-11 |+----------------------------------------+ 

V tomto případě používáme INTERVAL klíčové slovo, za nímž následuje počet dní a za ním DAY klíčové slovo.

INTERVAL klíčové slovo se používá k přidání nebo odečtení časového intervalu k DATETIME , DATE nebo TIME hodnota. Můžeme jej použít pro data spolu s příslušnou jednotkou data/času k přidání určitého počtu dní k našemu datu. V našem případě je jednotka data/času DAY , ale stejně tak to může být MONTH , YEAR , HOUR atd., stejně jako řadu složených jednotek.

DATE_ADD() Funkce

DATE_ADD() funkce funguje stejně jako ADDDATE() při použití podrobné syntaxe. Ve skutečnosti při použití podrobné syntaxe ADDDATE() je synonymem pro DATE_ADD() .

Příklad:

SELECT DATE_ADD('2021-05-01', INTERVAL 10 DAY); 

Výsledek:

+-----------------------------------------+| DATE_ADD('2021-05-01', INTERVAL 10 DNŮ) |+---------------------------------- -------+| 2021-05-11 |+-----------------------------------------+ 

SUBDATE() Funkce – Syntaxe 1

SUBDATE() funkce umožňuje odečíst částku k datu. Pokud však zadáte zápornou hodnotu k odečtení, skončí to tak, že bude přičteno k datu.

Příklad:

SELECT SUBDATE('2021-05-01', -10); 

Výsledek:

+----------------------------+| SUBDATE('2021-05-01', -10) |+----------------------------+| 2021-05-11 |+----------------------------+

SUBDATE() Funkce – Syntaxe 2

SUBDATE() funkce má také podrobnější syntaxi (podobně jako ADDDATE() funkce).

Příklad:

SELECT SUBDATE('2021-05-01', INTERVAL -10 DAY); 

Výsledek:

+-----------------------------------------+| SUBDATE('2021-05-01', INTERVAL -10 DAY) |+---------------------------------- --------+| 2021-05-11 |+-----------------------------------------+ 

DATE_SUB() Funkce

Zde je příklad, který používá DATE_SUB() funkce:

SELECT DATE_SUB('2021-05-01', INTERVAL -10 DAY); 

Výsledek:

+------------------------------------------+| DATE_SUB('2021-05-01', INTERVAL -10 DEN) |+---------------------------------- ---------+| 2021-05-11 |+------------------------------------------+ 

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 dní k našemu datu.

Příklad:

SELECT '2021-05-01' + INTERVAL 10 DAY; 

Výsledek:

+--------------------------------+| '2021-05-01' + INTERVAL 10 DNŮ |+--------------------------------+| 2021-05-11 |+--------------------------------+

- Operátor

- operátor lze použít k odečtení částky od data. Pokud však odečtete záporné číslo, bude k datu přidána kladná částka:

SELECT '2021-05-01' - INTERVAL -10 DAY; 

Výsledek:

+---------------------------------+| '2021-05-01' - INTERVAL -10 DNŮ |+---------------------------------+| 2021-05-11 |+---------------------------------+

BONUS:ADDTIME() Funkce

Řekl jsem, že tento článek obsahuje 8 způsobů, jak přidat dny k datu, ale zde je několik bonusových funkcí! Možná jsem měl tento článek nazvat „10 způsobů, jak přidat dny k hodnotě datetime“.

Každopádně můžete použít ADDTIME() funkce pro přidání počtu dní k výrazu datetime.

Příklad:

SELECT ADDTIME('2021-05-01 10:30:45', '1 0:0:0'); 

Výsledek:

+-------------------------------------------+| ADDTIME('2021-05-01 10:30:45', '1 0:0:0') |+------------------------- --------------------+| 2021-05-02 10:30:45 |+--------------------------------------- -----+

Můžete také změnit další časové jednotky, jako jsou hodiny, minuty, sekundy atd.

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:30:45', '-1 0:0:0'); 

Výsledek:

+--------------------------------------------+| SUBTIME('2021-05-01 10:30:45', '-1 0:0:0') |+------------------------ ----------------------+| 2021-05-02 10:30:45 |+--------------------------------------- ------+

Další jednotky data a času

Výše uvedené příklady přidávají k datu počet dní, ale stejné techniky můžeme použít k přidání libovolné jednotky data/času. Používáme DAY jako jednotka data/času, ale jak již bylo zmíněno, stejně snadno to může být MONTH , YEAR , HOUR atd., stejně jako jakékoli složené jednotky.

Úplný seznam jednotek data a času, které lze použít s výše uvedenými funkcemi a operátorem, naleznete v části Jednotky data a času MariaDB.


  1. Optimalizujte rozsah dotazu časového razítka Postgres

  2. Jak zálohovat RAC VM

  3. Propojení nebo import dat ze Salesforce

  4. SQLite - Změna tabulky