MySQL - INTERVAL Operator

Hai there, bakal ahli pangkalan data! Hari ini, kita akan melangkah ke dalam dunia operator INTERVAL MySQL yang menarik. Jangan khawatir jika anda baru dalam programming - saya akan menjadi panduannya yang ramah, dan kita akan mengenalinya secara berperingkat. Jadi, ambil secangkir kopi, dan mari kita masuk ke dalamnya!

MySQL - INTERVAL Operator

Apa Itu Operator INTERVAL?

Sebelum kita masuk ke dalam hal-hal kecil, mari kita mengenalapa operator INTERVAL. Bayangkan anda sedang merancang sebuah pesta, dan anda ingin tahu tanggal yang akan datang 3 hari lagi. Operator INTERVAL adalah seperti asisten perjalanan waktu pribadimu di MySQL, membantu anda melakukan perhitungan tanggal dan waktu dengan mudah.

Sintaksis Dasar

Sintaksis dasar operator INTERVAL tampak seperti ini:

date_or_datetime + INTERVAL expression unit

atau

date_or_datetime - INTERVAL expression unit

Di sini, date_or_datetime adalah titik awalmu, expression adalah sebuah nomor, dan unit adalah unit waktu (seperti DAY, MONTH, YEAR, dll.).

Menggunakan Operator INTERVAL

Ayo mulai dengan beberapa contoh sederhana untuk merasakan cuaca.

Menambahkan Hari ke Tanggal

SELECT DATE('2023-05-15') + INTERVAL 5 DAY AS future_date;

Kueri ini akan mengembalikan:

+-------------+
| future_date |
+-------------+
| 2023-05-20  |
+-------------+

Apa yang terjadi disini? Kita mulai dengan 15 Mei 2023, dan menambahkan 5 hari kepadanya. MySQL melakukan perhitungan untuk kita dan memberikan 20 Mei 2023. Sangat keren, kan?

Mengurangi Bulan dari Tanggal

SELECT DATE('2023-05-15') - INTERVAL 2 MONTH AS past_date;

Hasil:

+-----------+
| past_date |
+-----------+
| 2023-03-15|
+-----------+

Dalam contoh ini, kita sedang berpergian ke masa lalu! Kita mulai di 15 Mei 2023, dan kembali 2 bulan, sampai ke 15 Maret 2023.

Contoh Lebih Kompleks

Sekarang kita sudah mengenal dasarnya, mari kita mencoba sesuatu yang sedikit lebih sulit.

Menggabungkan Beberapa Interval

Anda dapat menggunakan beberapa ekspresi INTERVAL dalam satu kueri. Misalnya, anda ingin tahu tanggal 1 tahun, 3 bulan, dan 5 hari dari sekarang:

SELECT CURDATE() + INTERVAL 1 YEAR + INTERVAL 3 MONTH + INTERVAL 5 DAY AS future_date;

Kueri ini mengambil tanggal saat ini (CURDATE()), kemudian menambahkan 1 tahun, 3 bulan, dan 5 hari kepadanya. Itu seperti merencanakan batas waktu proyek jangka panjang!

Bekerja dengan Waktu

Operator INTERVAL tidak hanya untuk tanggal - ia juga bekerja dengan waktu! mari kita tambahkan 2 jam dan 30 menit ke waktu saat ini:

SELECT CURTIME() + INTERVAL 2 HOUR + INTERVAL 30 MINUTE AS future_time;

Ini sangat cocok untuk menghitung kapan tayangan favoritmu akan berakhir atau kapan pengiriman pizza anda akan tiba!

Aplikasi Praktis

Sekarang, mari kita lihat beberapa contoh dunia nyata di mana operator INTERVAL bisa sangat membantu.

Menghitung Tanggal Jatuh Tempo

Bayangkan anda sedang membangun sistem manajemen perpustakaan. Buku biasanya dipinjam selama 14 hari. Berikut adalah cara anda menghitung tanggal jatuh tempo:

SELECT
book_title,
checkout_date,
checkout_date + INTERVAL 14 DAY AS due_date
FROM book_loans;

Kueri ini akan memberikan anda daftar buku, tanggal peminjaman, dan kapan mereka harus dikembalikan - semua dihitung secara otomatis!

Tanggal Pembaruanlangganan

Jika anda sedang bekerja di layanan berlangganan, anda mungkin perlu menghitung kapan setiap langganan akan diperbarui:

SELECT
user_name,
subscription_start,
subscription_start + INTERVAL 1 MONTH AS renewal_date
FROM subscriptions
WHERE subscription_type = 'monthly';

Kueri ini membantu anda mengatur kapan setiap langganan bulanan akan diperbarui.

Menggunakan INTERVAL dalam Klause WHERE

Operator INTERVAL tidak hanya untuk pernyataan SELECT - anda juga dapat menggunakannya dalam klausa WHERE!

Menemukan Pesanan Terbaru

Misalnya, anda ingin menemukan semua pesanan yang ditempatkan dalam 7 hari terakhir:

SELECT * FROM orders
WHERE order_date > CURDATE() - INTERVAL 7 DAY;

Kueri ini akan mengembalikan semua pesanan dengan order_date yang jatuh dalam minggu terakhir.

Mengidentifikasi Acara yang Akan Datang

Jika anda sedang mengelola database acara, anda mungkin ingin menemukan semua acara yang akan datang dalam 30 hari mendatang:

SELECT * FROM events
WHERE event_date BETWEEN CURDATE() AND CURDATE() + INTERVAL 30 DAY;

Kueri ini akan memberikan anda daftar semua acara yang akan datang dalam 1 bulan mendatang.

Unit Operator INTERVAL

Operator INTERVAL mendukung berbagai unit waktu. Berikut adalah tabel dari semua unit yang tersedia:

Unit Deskripsi
MICROSECOND Microseconds (1/1,000,000 dari sebuah detik)
SECOND Detik
MINUTE Menit
HOUR Jam
DAY Hari
WEEK Minggu
MONTH Bulan
QUARTER Kuartal (3 bulan)
YEAR Tahun

Anda dapat menggunakan unit ini dengan operator INTERVAL untuk melakukan perhitungan waktu dan tanggal yang tepat.

Kesimpulan

Dan begitu pun, teman-teman! Kita telah berpergian melalui negeri operator INTERVAL MySQL, dari penambahan dan pengurangan dasar hingga aplikasi dunia nyata yang lebih kompleks. Ingat, operator INTERVAL adalah seperti mesin waktu bagi pangkalan data - ia memungkinkan anda untuk berpergian ke depan atau ke belakang waktu hanya dengan beberapa baris SQL.

Latihan membuat sempurna, jadi jangan khawatir untuk mencoba interval dan unit yang berbeda. Sebelum anda tahu, anda akan menghitung tanggal dan waktu seperti seorang ahli!

Happy coding, dan semoga kuerimu selalu kembali tepat waktu! ?

Credits: Image by storyset