Di MariaDB, TO_DAYS()
adalah fungsi tanggal dan waktu bawaan yang mengembalikan jumlah hari dari awal kalender standar (0000-00-00), berdasarkan tanggal tertentu.
Anda meneruskan tanggal ke fungsi saat Anda memanggilnya.
TO_DAYS()
fungsi adalah kebalikan dari FROM_DAYS()
fungsi.
Sintaks
Sintaksnya seperti ini:
TO_DAYS(date)
Dimana date
adalah tanggal untuk mengembalikan jumlah hari sejak 0000-00-00.
Contoh
Ini contohnya:
SELECT TO_DAYS('2028-12-31');
Hasil:
+-----------------------+ | TO_DAYS('2028-12-31') | +-----------------------+ | 741077 | +-----------------------+
Berdasarkan Tanggal Hari Ini
Berikut adalah contoh yang menggunakan NOW()
untuk mengembalikan jumlah hari antara 0000-00-00 dan hari ini:
SELECT
NOW(),
TO_DAYS(NOW());
Hasil:
+---------------------+----------------+ | NOW() | TO_DAYS(NOW()) | +---------------------+----------------+ | 2021-05-23 09:56:45 | 738298 | +---------------------+----------------+
Argumen Tidak Valid
Saat memberikan argumen yang tidak valid, TO_DAYS()
mengembalikan NULL
dengan peringatan:
SELECT TO_DAYS('Oops!');
Hasil:
+------------------+ | TO_DAYS('Oops!') | +------------------+ | NULL | +------------------+ 1 row in set, 1 warning (0.000 sec)
Periksa peringatannya:
SHOW WARNINGS;
Hasil:
+---------+------+-----------------------------------+ | Level | Code | Message | +---------+------+-----------------------------------+ | Warning | 1292 | Incorrect datetime value: 'Oops!' | +---------+------+-----------------------------------+
Argumen Tidak Ada
Memanggil TO_DAYS()
dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun, menghasilkan kesalahan:
SELECT TO_DAYS();
Hasil:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'TO_DAYS'
Dan contoh lain:
SELECT TO_DAYS( '2028-12-31', '2029-12-31' );
Hasil:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'TO_DAYS'
Kalender Pra-Gregorian
TO_DAYS()
fungsi tidak dirancang untuk digunakan dengan tanggal sebelum munculnya kalender Gregorian (yang diperkenalkan pada Oktober 1582). Hasil tidak dapat diandalkan karena tidak memperhitungkan hari-hari yang hilang saat kalender diubah dari kalender Julian.