Saat bekerja dengan MySQL, Anda dapat menggunakan TIME()
berfungsi untuk mengekstrak bagian waktu dari nilai waktu atau waktu.
Cara kerjanya adalah, Anda melewatkan ekspresi waktu/datetime sebagai argumen, dan TIME()
akan mengembalikan bagian waktu.
Sintaks
Sintaksnya seperti ini:
TIME(expr)
Dimana expr
adalah ekspresi waktu/tanggalwaktu yang Anda inginkan untuk mengekstrak bagian waktu.
Contoh Dasar
Berikut ini contoh penggunaan nilai datetime.
SELECT TIME('2021-01-03 11:15:45');
Hasil:
+-----------------------------+ | TIME('2021-01-03 11:15:45') | +-----------------------------+ | 11:15:45 | +-----------------------------+
Detik Pecahan
Berikut adalah contoh di mana nilai datetime juga berisi bagian pecahan detik.
SELECT TIME('2021-01-03 11:15:45.123456');
Hasil:
+------------------------------------+ | TIME('2021-01-03 11:15:45.123456') | +------------------------------------+ | 11:15:45.123456 | +------------------------------------+
Menghilangkan Bagian Detik
Berikut adalah contoh di mana bagian detik dihilangkan dari nilai awal.
SELECT TIME('2021-01-03 11:15');
Hasil:
+--------------------------+ | TIME('2021-01-03 11:15') | +--------------------------+ | 11:15:00 | +--------------------------+
Dalam hal ini, bagian detik tetap dikembalikan, meskipun dihilangkan dari nilai awal.
Mengambil Waktu dari Nilai 'waktu'
Seperti yang disebutkan, argumen pertama dapat berupa nilai waktu itu sendiri (yaitu tidak harus berupa nilai waktu-tanggal).
SELECT TIME('11:15');
Hasil:
+---------------+ | TIME('11:15') | +---------------+ | 11:15:00 | +---------------+
Replikasi Berbasis Pernyataan – Peringatan
Dokumentasi MySQL menyatakan hal berikut tentang TIME()
fungsi:
Fungsi ini tidak aman untuk replikasi berbasis pernyataan. Peringatan dicatat jika Anda menggunakan fungsi ini saat
binlog_format
disetel keSTATEMENT
.