Tips dan Trick

Tips Insert Date dengan Interval pada MySQL

Beberapa hari ini saya sedang disibukkan dengan tugas kuliah yang menumpuk. Terlebih untuk tugas project UAS mata kuliah pemrograman dimana harus membuat 1 buah program yang bisa melakukan CRUD (Create, Read, Update, Delete) data ke database MySQL.

Nah untuk project tersebut saya membuat program mengenai input data domain. Saya buat program dengan mengacu ke situasi aslinya, yaitu misal ketika registrasi domain, maka nanti nama domain tersebut akan expired 1 tahun kemudian. Berarti kita dari awal harus langsung insert data date ke MySQL dengan set date nya 1 tahun ke depan dari tanggal sekarang.

Baca Juga : Mengatasi Error mysqldump gtid Saat Menjalankan mysqldump

Untuk contohnya disini saya sudah buat database list_domain dengan table domain

MariaDB [list_domain]> show tables;
+-----------------------+
| Tables_in_list_domain |
+-----------------------+
| domain                |
+-----------------------+
1 row in set (0.00 sec)

MariaDB [list_domain]> desc domain;
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id          | varchar(2)  | NO   | PRI | NULL    |       |
| nama_domain | varchar(50) | YES  |     | NULL    |       |
| tgl_expired | date        | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

Untuk contoh syntax insert nya dengan set date manual seperti berikut

MariaDB [list_domain]> insert into domain values('1','rizkypratama.id','2019-07-11');

Itukan syntax jika kita insert data date dengan set date nya manual, gimana kalau sesuai case saya diatas tadi, ingin set date nya langsung 1 tahun kedepan, bisa dengan syntax seperti berikut

MariaDB [list_domain]> insert into domain values('2','rizkypratama.net',CURDATE() + INTERVAL 1 YEAR);

CURDATE() = Untuk mengambil value date sesuai date saat itu juga, current date

INTERVAL 1 YEAR = Untuk set date supaya ditambah 1 tahun dari tanggal hari ini, misal tanggal hari ini yaitu 11-07-2019, maka ditambah 1 tahun.

Untuk hasilnya nanti seperti berikut

MariaDB [list_domain]> select * from domain;
+----+------------------+-------------+
| id | nama_domain      | tgl_expired |
+----+------------------+-------------+
| 1  | rizkypratama.id  | 2019-07-11  |
| 2  | rizkypratama.net | 2020-07-11  |
+----+------------------+-------------+

Kalau misal mau set date 1 bulan kedepan, tinggal diubah saja YEAR menjadi MONTH, atau DAY jika hanya set beberapa hari kedepan saja.

Ref : https://www.w3schools.com/sql/func_mysql_date_add.asp

Mungkin cukup sekian, semoga bermanfaat

Share
Published by
Rizky Pratama

Recent Posts

Tips Zimbra : Mengatasi Service Cbpolicyd Starting Failed Setelah Migrasi ke Rocky Linux 8

Beberapa waktu lalu, Excellent mendapatkan project migrasi Zimbra dari versi Open Source Ke Zimbra Network…

4 weeks ago

Mengatasi Error “no matching host key type found. Their offer: ssh-rsa,ssh-dss” Setelah Upgrade MacOS Ventura Saat Melakukan SSH

Bulan Oktober 2022 lalu, Apple resmi release MacOS terbaru mereka, yaitu MacOS Ventura. Beberapa fitur…

1 year ago

Cara Memindahkan Saham ke Sekuritas Lain

Tidak terasa sudah cukup lama saya tidak update tulisan pada blog ini lagi, akhirnya kali…

2 years ago

Tahun Baru, Markas Baru, Tulisan Baru

Tahun baru 2022 telah tiba, tidak terasa waktu berjalan begitu cepat, banyak cerita dan kenangan…

2 years ago

Mengatasi “Error while performing update: Input/output error (5)” Saat Update Tuxera pada MacOS

Kembali lagi bersama saya, setelah beberapa lama tidak update tulisan pada blog ini :D kali…

2 years ago

Konfigurasi PPTP Client pada Container Docker CLI

PPTP adalah kependekan dari Point-toPoint Tunneling Protocol yang merupakan bahasa yang membuat komputer dapat berkomunikasi…

3 years ago