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

Bagaimana ADD_MONTHS() Bekerja di MariaDB

Di MariaDB, ADD_MONTHS() adalah fungsi tanggal dan waktu bawaan yang menambahkan jumlah bulan tertentu ke tanggal, dan mengembalikan hasilnya.

Tanggal dapat berupa tanggal, waktu tanggal, atau nilai stempel waktu.

Fungsi ini diperkenalkan di MariaDB 10.6.1 untuk meningkatkan kompatibilitas Oracle. Setidaknya ada 6 cara lain untuk menambahkan bulan ke tanggal di MariaDB.

Sintaks

Sintaksnya seperti ini:

ADD_MONTHS(date, months)

Dimana date adalah tanggal, dan months adalah jumlah bulan untuk ditambahkan.

Contoh

Ini contohnya:

SELECT ADD_MONTHS('2020-01-01', 3);

Hasil:

+-----------------------------+
| ADD_MONTHS('2020-01-01', 3) |
+-----------------------------+
| 2020-04-01                  |
+-----------------------------+

Kurangi Bulan

Untuk mengurangi bulan dari tanggal, gunakan nilai negatif untuk argumen kedua.

Contoh:

SELECT ADD_MONTHS('2020-01-01', -3);

Hasil:

+------------------------------+
| ADD_MONTHS('2020-01-01', -3) |
+------------------------------+
| 2019-10-01                   |
+------------------------------+

Konteks Numerik

Tanggal dapat diberikan dalam bentuk numerik jika diperlukan:

SELECT ADD_MONTHS(20200101, 3);

Hasil:

+-------------------------+
| ADD_MONTHS(20200101, 3) |
+-------------------------+
| 2020-04-01              |
+-------------------------+

Tanggal Tidak Valid

Jika tanggal tidak valid, ADD_MONTHS() mengembalikan null dengan peringatan:

SELECT ADD_MONTHS('2020-01-51', 3);

Hasil:

+-----------------------------+
| ADD_MONTHS('2020-01-51', 3) |
+-----------------------------+
| NULL                        |
+-----------------------------+
1 row in set, 1 warning (0.003 sec)

Mari kita periksa peringatannya:

SHOW WARNINGS;

Hasil:

+---------+------+----------------------------------------+
| Level   | Code | Message                                |
+---------+------+----------------------------------------+
| Warning | 1292 | Incorrect datetime value: '2020-01-51' |
+---------+------+----------------------------------------+

Argumen Null

ADD_MONTHS() mengembalikan null jika ada argumen null :

SELECT ADD_MONTHS('2020-01-01', null);

Hasil:

+--------------------------------+
| ADD_MONTHS('2020-01-01', null) |
+--------------------------------+
| NULL                           |
+--------------------------------+

Jumlah Argumen Tidak Valid

Melewati sejumlah argumen yang tidak valid menghasilkan kesalahan:

SELECT ADD_MONTHS(3);

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. MariaDB GROUP_CONCAT()

  2. Bagaimana Fungsi INSERT() Bekerja di MariaDB

  3. Bagaimana CHR() Bekerja di MariaDB

  4. TAMPILKAN TABEL di MariaDB

  5. MariaDB ROWNUM() Dijelaskan