MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

8 sposobów na dodawanie dni do daty w MariaDB

MariaDB udostępnia kilka sposobów na dodanie określonej liczby dni do podanej daty. Na przykład możesz chcieć dodać 10 dni do daty, 30 dni, a nawet tylko 1 dzień. Na szczęście MariaDB to ułatwia.

Oto 8 sposobów na dodanie liczby dni do podanej daty w MariaDB.

ADDDATE() Funkcja

Zacznijmy od ADDDATE() funkcjonować.

Ta funkcja ma dwie różne składnie. Pierwsza składnia zapewnia zwięzły sposób dodawania określonej liczby dni do daty.

Przykład:

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

Wynik:

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

Używając tej składni, podajemy dwa argumenty. Pierwszy argument to data, a drugi to liczba dni, które należy dodać do tej daty.

ADDDATE() Funkcja — składnia 2

ADDDATE() funkcja ma również bardziej szczegółową składnię. Ta składnia pozwala nam wyraźniej określić sposób dodawania dni do daty.

Przykład:

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

Wynik:

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

W tym przypadku używamy INTERVAL słowo kluczowe, po którym następuje liczba dni, a po nim DAY słowo kluczowe.

INTERVAL słowo kluczowe służy do dodawania lub odejmowania przedziału czasu do DATETIME , DATE lub TIME wartość. Możemy go używać w datach, wraz z odpowiednią jednostką daty/godziny, aby dodać określoną liczbę dni do naszej daty. W naszym przypadku jednostką daty/czasu jest DAY , ale równie dobrze może to być MONTH , YEAR , HOUR , itp., a także szereg jednostek złożonych.

DATE_ADD() Funkcja

DATE_ADD() funkcja działa tak samo jak ADDDATE() podczas używania pełnej składni. W rzeczywistości, używając pełnej składni, ADDDATE() jest synonimem DATE_ADD() .

Przykład:

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

Wynik:

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

SUBDATE() Funkcja — składnia 1

SUBDATE() funkcja umożliwia odejmowanie kwota do daty. Jeśli jednak podasz wartość ujemną do odjęcia, zostanie ona dodana do daty.

Przykład:

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

Wynik:

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

SUBDATE() Funkcja — składnia 2

SUBDATE() funkcja ma również bardziej szczegółową składnię (podobną do ADDDATE() funkcja).

Przykład:

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

Wynik:

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

DATE_SUB() Funkcja

Oto przykład, w którym użyto DATE_SUB() funkcja:

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

Wynik:

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

+ Operator

Inną opcją jest użycie + operator.

+ Operator jest używany do dodawania i możemy go używać w datach, wraz z odpowiednią jednostką daty/godziny, aby dodać określoną liczbę dni do naszej daty.

Przykład:

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

Wynik:

+--------------------------------+
| '2021-05-01' + INTERVAL 10 DAY |
+--------------------------------+
| 2021-05-11                     |
+--------------------------------+

- Operator

- Operator może służyć do odejmowania kwoty od daty. Jeśli jednak odejmiesz liczbę ujemną, do daty zostanie dodana kwota dodatnia:

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

Wynik:

+---------------------------------+
| '2021-05-01' - INTERVAL -10 DAY |
+---------------------------------+
| 2021-05-11                      |
+---------------------------------+

BONUS:ADDTIME() Funkcja

Powiedziałem, że ten artykuł zawiera 8 sposobów na dodawanie dni do daty, ale oto kilka funkcji bonusowych! Może powinienem zamiast tego nazwać ten artykuł „10 sposobów dodawania dni do wartości daty i godziny”.

W każdym razie możesz użyć ADDTIME() funkcja dodawania liczby dni do wyrażenia daty i godziny.

Przykład:

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

Wynik:

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

Możesz także zmienić inne jednostki czasu, takie jak godziny, minuty, sekundy itp.

Alternatywnie możesz to zmienić i użyć SUBTIME() z ujemną wartością, jeśli sobie tego życzysz:

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

Wynik:

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

Inne jednostki daty i czasu

Powyższe przykłady dodają liczbę dni do daty, ale możemy użyć tych samych technik, aby dodać dowolną jednostkę daty/czasu. Używamy DAY jako jednostka daty/czasu, ale jak wspomniano, równie dobrze może to być MONTH , YEAR , HOUR , itp., jak również dowolna z jednostek złożonych.

Zobacz jednostki daty i czasu MariaDB, aby uzyskać pełną listę jednostek daty/czasu, których można używać z powyższymi funkcjami i operatorem.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Porównanie ręcznych wdrożeń baz danych z wdrożeniami automatycznymi

  2. MariaDB JSON_COMPACT() Objaśnienie

  3. Korzystaj z mycli i ucz się MariaDB/MySQL wygodnie w terminalu!

  4. Napraw „BŁĄD 1222 (21000):Użyte instrukcje SELECT mają inną liczbę kolumn” podczas korzystania z UNION w MariaDB

  5. Optymalizacja silnika pamięci masowej MySQL:konfiguracja optymalizacji InnoDB pod kątem wysokiej wydajności