MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana DATE_ADD() Bekerja di MariaDB

Di MariaDB, DATE_ADD() adalah fungsi tanggal dan waktu bawaan yang melakukan aritmatika tanggal.

Ini memungkinkan Anda untuk mengubah tanggal dengan menentukan tanggal, unit yang akan ditambahkan, dan jumlah yang akan ditambahkan. Anda dapat memberikan jumlah negatif jika Anda perlu mengurangi tanggal dengan interval tertentu.

Sintaks

Sintaksnya seperti ini:

DATE_ADD(date,INTERVAL expr unit)

Dimana date adalah tanggal untuk berubah, expr adalah jumlah yang akan ditambahkan, dan unit adalah unit tanggal/waktu yang akan ditambahkan (misalnya detik, menit, dll).

Contoh

Berikut ini contoh dasarnya:

SELECT DATE_ADD('2021-05-31 10:00:00', INTERVAL 1 HOUR);

Hasil:

+--------------------------------------------------+
| DATE_ADD('2021-05-31 10:00:00', INTERVAL 1 HOUR) |
+--------------------------------------------------+
| 2021-05-31 11:00:00                              |
+--------------------------------------------------+

Ini seperti melakukan hal berikut:

SELECT '2021-05-31 10:00:00' + INTERVAL 1 HOUR;

Hasil:

+-----------------------------------------+
| '2021-05-31 10:00:00' + INTERVAL 1 HOUR |
+-----------------------------------------+
| 2021-05-31 11:00:00                     |
+-----------------------------------------+

Interval Negatif

Memberikan interval negatif akan mengurangi jumlah tersebut dari tanggal.

Contoh:

SELECT DATE_ADD('2021-05-31 10:00:00', INTERVAL -1 HOUR);

Hasil:

+---------------------------------------------------+
| DATE_ADD('2021-05-31 10:00:00', INTERVAL -1 HOUR) |
+---------------------------------------------------+
| 2021-05-31 09:00:00                               |
+---------------------------------------------------+

Unit Lain

Berikut adalah contoh yang menambahkan interval 1 ke berbagai unit tanggal dan waktu:

SELECT 
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 YEAR) AS YEAR,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 MONTH) AS MONTH,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 DAY) AS DAY,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR) AS HOUR,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 MINUTE) AS MINUTE,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 SECOND) AS SECOND,
    DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 MICROSECOND) AS MICROSECOND;

Hasil (menggunakan keluaran vertikal):

       YEAR: 2022-05-01 10:00:00
      MONTH: 2021-06-01 10:00:00
        DAY: 2021-05-02 10:00:00
       HOUR: 2021-05-01 11:00:00
     MINUTE: 2021-05-01 10:01:00
     SECOND: 2021-05-01 10:00:01
MICROSECOND: 2021-05-01 10:00:00.000001

Unit Komposit

Berikut ini contoh yang menggunakan unit komposit:

SELECT 
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:2' YEAR_MONTH) AS "YEAR_MONTH",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:25:35' HOUR_SECOND) AS "HOUR_SECOND",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' DAY_MINUTE) AS "DAY_MINUTE";

Hasil:

+---------------------+---------------------+---------------------+
| YEAR_MONTH          | HOUR_SECOND         | DAY_MINUTE          |
+---------------------+---------------------+---------------------+
| 2022-07-01 10:00:00 | 2021-05-01 11:25:35 | 2021-05-01 11:30:00 |
+---------------------+---------------------+---------------------+

Tanggal Nol

Melewati null untuk tanggal kembali null :

SELECT DATE_ADD(null, INTERVAL 1 YEAR);

Hasil:

+---------------------------------+
| DATE_ADD(null, INTERVAL 1 YEAR) |
+---------------------------------+
| NULL                            |
+---------------------------------+

Argumen Tidak Ada

Memanggil DATE_ADD() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun menghasilkan kesalahan:

SELECT DATE_ADD();

Hasil:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menginstal Laravel Di Ubuntu Dengan Dukungan Apache, MariaDB, dan PHP

  2. Cara Mengidentifikasi Masalah Kinerja MySQL dengan Query Lambat

  3. MariaDB di Tokyo

  4. Kurangi Mikrodetik dari Nilai Datetime di MariaDB

  5. Apa yang Harus Diperhatikan jika Replikasi MySQL Anda Lagging