MySQL - Operator INTERVAL

Hai teman-teman, para ahli basisdata masa depan! Hari ini, kita akan mengemban perjalanan menarik ke dunia operator INTERVAL MySQL. Jangan khawatir jika Anda baru dalam pemrograman – saya akan menjadi panduan ramah Anda, dan kita akan mengexploreasi topik ini secara bertahap. Jadi, ambil secangkir kopi, dan mari kita masuk ke dalamnya!

MySQL - INTERVAL Operator

Apa Itu Operator INTERVAL?

Sebelum kita masuk ke detailnya, mari kita pahami apa itu operator INTERVAL. Bayangkan Anda sedang merencanakan pesta, dan Anda ingin tahu tanggal yang akan datang 3 hari lagi. Operator INTERVAL adalah seperti asisten perjalanan waktu pribadi Anda di MySQL, membantu Anda melakukan perhitungan tanggal dan waktu dengan mudah.

Sintaks Dasar

Sintaks 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 awal Anda, expression adalah sebuah nomor, dan unit adalah unit waktu (seperti DAY, MONTH, YEAR, dll.).

Menggunakan Operator INTERVAL

Mari kita mulai dengan beberapa contoh sederhana untuk merasakan suasana.

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 di sini? Kita mulai dari 15 Mei 2023, dan menambahkan 5 hari kepadanya. MySQL melakukan perhitungan untuk kita dan memberikan 20 Mei 2023. Sangat menarik, 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 di 15 Maret 2023.

Contoh Lebih Kompleks

Sekarang kita sudah mengenal dasar-dasar, mari kita coba sesuatu yang lebih menantang.

Mengkombinasikan 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. Seperti merencanakan batas waktu proyek jangka panjang!

Bekerja dengan Waktu

Operator INTERVAL tidak hanya untuk tanggal – itu 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 favorit Anda 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 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 tanggal jatuh tempo – 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 untuk 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!

Mencari Pesanan Baru

Misalnya, Anda ingin mencari 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 mendatang

Jika Anda sedang mengelola basisdata 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 semua unit yang tersedia:

Unit Deskripsi
MICROSECOND Mikrosekon (1/1.000.000 dari satu 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 tanggal dan waktu yang presisi.

Kesimpulan

Dan begitu saja, teman-teman! Kita telah mengemban perjalanan melalui dunia operator INTERVAL MySQL, dari penambahan dan pengurangan dasar hingga aplikasi dunia nyata yang lebih kompleks. Ingat, operator INTERVAL adalah seperti mesin waktu bagi basisdata Anda – itu memungkinkan Anda untuk berpergian ke depan atau ke belakang dalam 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 kueri Anda selalu kembali tepat waktu! ?

Credits: Image by storyset