Di MySQL, Anda dapat menggunakan ADDDATE()
berfungsi untuk menambahkan jumlah waktu tertentu ke tanggal. Misalnya, Anda dapat menggunakannya untuk menambahkan 10 hari ke tanggal tertentu. Anda dapat menentukan apakah akan menambahkan hari, minggu, bulan, kuartal, tahun, dll. Anda juga dapat menambahkan nilai waktu, seperti detik, mikrodetik, dll.
ADDDATE()
fungsi adalah sinonim untuk DATE_ADD()
fungsi (keduanya melakukan hal yang sama) saat menggunakan sintaks pertama yang tercantum di bawah ini.
Artikel ini berisi contoh untuk mendemonstrasikan penggunaan ADDDATE()
fungsi.
Sintaks
Anda dapat menggunakan fungsi ini dengan dua cara berikut:
ADDDATE(date,INTERVAL expr unit)
Atau
ADDDATE(expr,days)
Contoh 1 – Sintaks Pertama
Berikut adalah contoh penggunaan bentuk pertama dari sintaks.
SELECT ADDDATE('2018-12-01', INTERVAL 2 DAY) AS Result;
Hasil:
+------------+ | Result | +------------+ | 2018-12-03 | +------------+
Contoh ini menambahkan 2 hari ke tanggal yang diberikan oleh argumen pertama.
Contoh 2 – Sintaks Kedua
Contoh ini dapat ditulis ulang sebagai berikut:
SELECT ADDDATE('2018-12-01', 2) AS Result;
Hasil:
+------------+ | Result | +------------+ | 2018-12-03 | +------------+
Ini menggunakan bentuk kedua dari sintaks. Argumen kedua adalah bilangan bulat yang mewakili berapa hari harus ditambahkan ke tanggal yang diberikan oleh argumen pertama. Jadi jelas, formulir ini hanya cocok jika Anda ingin menentukan jumlahnya dalam hari.
Perhatikan bahwa ADDDATE()
adalah sinonim untuk DATE_ADD()
hanya ketika sintaks pertama sedang digunakan. Sintaks kedua hanya tersedia di ADDDATE()
.
Contoh 3 – Unit Tanggal Lainnya
Salah satu manfaat dari bentuk pertama dari sintaks ini adalah Anda dapat menentukan apakah akan menambahkan hari, minggu, bulan, tahun, dll. Berikut beberapa contohnya.
SELECT '2018-12-01' AS 'Start Date', ADDDATE('2018-12-01', INTERVAL 2 WEEK) AS '+2 Weeks', ADDDATE('2018-12-01', INTERVAL 2 MONTH) AS '+2 Months', ADDDATE('2018-12-01', INTERVAL 2 QUARTER) AS '+2 Quarters', ADDDATE('2018-12-01', INTERVAL 2 YEAR) AS '+2 Years';
Hasil:
+------------+------------+------------+-------------+------------+ | Start Date | +2 Weeks | +2 Months | +2 Quarters | +2 Years | +------------+------------+------------+-------------+------------+ | 2018-12-01 | 2018-12-15 | 2019-02-01 | 2019-06-01 | 2020-12-01 | +------------+------------+------------+-------------+------------+
Contoh 4 – Satuan Waktu
Anda juga dapat menggunakan ADDDATE()
untuk menambahkan unit waktu ke nilai tanggal/waktu. Ini contohnya.
SELECT ADDDATE('2018-12-01 01:00:00', INTERVAL 2 HOUR) AS Result;
Hasil:
+---------------------+ | Result | +---------------------+ | 2018-12-01 03:00:00 | +---------------------+
Nilai yang Diharapkan
Tabel berikut menunjukkan nilai satuan yang valid dan format yang diharapkan.
unit Nilai | expr yang diharapkan Format |
---|---|
MIKROSEKONDA | MIKROSEKON |
DETIK | DETIK |
MENIT | MENIT |
JAM | JAM |
HARI | HARI |
MINGGU | MINGGU |
BULAN | BULAN |
KUARTA | PEREMPAT |
TAHUN | TAHUN |
SECOND_MICROSECOND | ‘SECONDS.MICROSECONDS’ |
MINUTE_MICROSECOND | 'MENIT:DETIK.MIKROSEKON' |
MINUTE_SECOND | 'MENIT:DETIK' |
HOUR_MICROSECOND | ‘JAM:MENIT:DETIK.MICROSECONDS’ |
HOUR_SECOND | 'JAM:MENIT:DETIK' |
HOUR_MINUTE | 'JAM:MENIT' |
DAY_MICROSECOND | 'HARI JAM:MINUTES:SECONDS.MICROSECONDS' |
HARI_DETIK | 'HARI JAM:MENIT:DETIK' |
HARI_MINUTE | 'HARI JAM:MENIT' |
HARI_JAM | 'JAM HARI' |
BULAN_TAHUN | 'TAHUN-BULAN' |