Fungsi Date Time MySQL
Fungsi date time adalah fungsi yang digunakan untuk menampilkan atau memanipulasi keterangan tanggal dan waktu tertentu pada database MySQL.
Berikut ini terdapat beberapa fungsi date time yang sering digunakan dengan contohnya.
1. ADDDATE
Fungsi ADDDATE() adalah fungsi yang digunakan untuk menambahkan interval tangal atau waktu ke tanggal tertentu yang akan ditampilkan.
Sintaks:
ADDDATE(tanggal, INTERVAL nilai_tambahan)
Contoh sintaks:
Menambahkan 10 Menit
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL 10 MINUTE);
+-------------------------------------------+
| ADDDATE('2022-01-02', INTERVAL 10 MINUTE) |
+-------------------------------------------+
| 2022-01-02 00:10:00 |
+-------------------------------------------+
1 row in set (0.000 sec)
Mengurangi -10 Menit
MariaDB [(none)]> SELECT ADDDATE('2022-01-02 10:30:00', INTERVAL -10 MINUTE);
+-----------------------------------------------------+
| ADDDATE('2022-01-02 10:30:00', INTERVAL -10 MINUTE) |
+-----------------------------------------------------+
| 2022-01-02 10:20:00 |
+-----------------------------------------------------+
1 row in set (0.000 sec)
Menambahkan 10 Jam
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL 10 HOUR);
+-----------------------------------------+
| ADDDATE('2022-01-02', INTERVAL 10 HOUR) |
+-----------------------------------------+
| 2022-01-02 10:00:00 |
+-----------------------------------------+
1 row in set (0.000 sec)
Mengurangi 10 Jam
MariaDB [(none)]> SELECT ADDDATE('2022-01-02 10:30:00', INTERVAL -10 HOUR);
+---------------------------------------------------+
| ADDDATE('2022-01-02 10:30:00', INTERVAL -10 HOUR) |
+---------------------------------------------------+
| 2022-01-02 00:30:00 |
+---------------------------------------------------+
1 row in set (0.001 sec)
Menambahkan 5 Bulan
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL 5 MONTH);
+-----------------------------------------+
| ADDDATE('2022-01-02', INTERVAL 5 MONTH) |
+-----------------------------------------+
| 2022-06-02 |
+-----------------------------------------+
1 row in set (0.000 sec)
Mengurangi 5 Bulan
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL -5 MONTH);
+------------------------------------------+
| ADDDATE('2022-01-02', INTERVAL -5 MONTH) |
+------------------------------------------+
| 2021-08-02 |
+------------------------------------------+
1 row in set (0.000 sec)
Menambahkan 5 Tahun
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL 5 YEAR);
+----------------------------------------+
| ADDDATE('2022-01-02', INTERVAL 5 YEAR) |
+----------------------------------------+
| 2027-01-02 |
+----------------------------------------+
1 row in set (0.000 sec)
Mengurangi 5 Tahun
MariaDB [(none)]> SELECT ADDDATE('2022-01-02', INTERVAL -5 YEAR);
+-----------------------------------------+
| ADDDATE('2022-01-02', INTERVAL -5 YEAR) |
+-----------------------------------------+
| 2017-01-02 |
+-----------------------------------------+
1 row in set (0.000 sec)
2. ADDTIME
Fungsi ADDTIME() adalah fungsi yang digunakan untuk menambahkan interval waktu ke tanggal dan waktu tertentu yang akan ditampilkan.
Sintaks:
ADDTIME(tangal/waktu, waktu_tambahan)
Contoh sintaks:
Menambahkan 5 detik
MariaDB [(none)]> SELECT ADDTIME('2022-01-2 10:30:21', '5');
+------------------------------------+
| ADDTIME('2022-01-2 10:30:21', '5') |
+------------------------------------+
| 2022-01-02 10:30:26 |
+------------------------------------+
1 row in set (0.000 sec)
Menambahkan 5 Menit
MariaDB [(none)]> SELECT ADDTIME('2022-01-2 10:30:21', '0:5:0');
+----------------------------------------+
| ADDTIME('2022-01-2 10:30:21', '0:5:0') |
+----------------------------------------+
| 2022-01-02 10:35:21 |
+----------------------------------------+
1 row in set (0.000 sec)
Menambahkan 5 Jam
MariaDB [(none)]> SELECT ADDTIME('2022-01-2 10:30:21', '5:0:0');
+----------------------------------------+
| ADDTIME('2022-01-2 10:30:21', '5:0:0') |
+----------------------------------------+
| 2022-01-02 15:30:21 |
+----------------------------------------+
1 row in set (0.000 sec)
Menambahkan 5 Jam 5 Menit 5 Detik
MariaDB [(none)]> SELECT ADDTIME('2022-01-2 10:30:21', '5:5:5');
+----------------------------------------+
| ADDTIME('2022-01-2 10:30:21', '5:5:5') |
+----------------------------------------+
| 2022-01-02 15:35:26 |
+----------------------------------------+
1 row in set (0.000 sec)
3. CURDATE
Fungsi CURDATE() adalah fungsi yang digunakan untuk menampilkan tanggal saat ini. Tanggal yang ditampilkan berupa string (YYYY-MM-DD) dan numerik (YYYYMMDD).
Sintaks:
CURDATE()
Contoh sintaks:
MariaDB [(none)]> SELECT CURDATE(); --tipe string
+------------+
| CURDATE() |
+------------+
| 2022-01-03 |
+------------+
1 row in set (0.004 sec)
MariaDB [(none)]> SELECT CURDATE() + 5; --tipe numerik
+---------------+
| CURDATE() + 5 |
+---------------+
| 20220108 |
+---------------+
1 row in set (0.000 sec)
4. CURRENT_DATE
Fungsi CURRENT_DATE() sama dengan fungsi CURDATE() menampilkan tanggal saat ini.
Sintaks:
CURRENT_DATE()
Contoh sintaks:
MariaDB [(none)]> SELECT CURRENT_DATE(); --tipe string
+----------------+
| CURRENT_DATE() |
+----------------+
| 2022-01-03 |
+----------------+
1 row in set (0.001 sec)
MariaDB [(none)]> SELECT CURRENT_DATE() + 2; --tipe numerik
+--------------------+
| CURRENT_DATE() + 2 |
+--------------------+
| 20220105 |
+--------------------+
1 row in set (0.000 sec)
5. CURRENT_TIME
Fungsi CURRENT_TIME() adalah fungsi yang digunakan untuk menampilkan waktu saat ini. Waktu yang ditampilkan berupa string (HH-MM-SS) dan numerik (HHMMSS)
Sintaks:
CURRENT_TIME()
Contoh sintaks:
MariaDB [(none)]> SELECT CURRENT_TIME(); --tipe string
+----------------+
| CURRENT_TIME() |
+----------------+
| 13:00:46 |
+----------------+
1 row in set (0.000 sec)
MariaDB [(none)]> SELECT CURRENT_TIME() + 0; --tipe numerik
+--------------------+
| CURRENT_TIME() + 0 |
+--------------------+
| 130101 |
+--------------------+
1 row in set (0.000 sec)
6. CURRENT_TIMESTAMP
Fungsi CURRENT_TIMESTAMP() adalah fungsi yang digunakan untuk menampilkan tanggal dan waktu saat ini. Tanggal dan waktu yang ditampilkan berupa string (YYYY-MM-DD HH-MM-SS) dan numerik (YYYYMMDDHHMMSS)
Sintaks:
CURRENT_TIMESTAMP()
Contoh sintaks:
MariaDB [(none)]> SELECT CURRENT_TIMESTAMP(); --tipe string
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2022-01-03 13:17:51 |
+---------------------+
1 row in set (0.000 sec)
MariaDB [(none)]> SELECT CURRENT_TIMESTAMP() + 0; --tipe numerik
+-------------------------+
| CURRENT_TIMESTAMP() + 0 |
+-------------------------+
| 20220103131826 |
+-------------------------+
1 row in set (0.000 sec)
7. CURTIME
Fungsi CURTIME() sama dengan fungsi CURRENT_TIME().
Sintaks:
CURTIME()
Contoh sintaks:
MariaDB [(none)]> SELECT CURTIME();
+-----------+
| CURTIME() |
+-----------+
| 13:28:21 |
+-----------+
1 row in set (0.000 sec)
8. DATE
Fungsi DATE() adalah fungsi yang digunakan untuk menampilkan tanggal tertentu.
Sintaks:
DATE(tanggal dan waktu)
Contoh sintaks:
MariaDB [(none)]> SELECT DATE('2022-01-03 10:30:21');
+-----------------------------+
| DATE('2022-01-03 10:30:21') |
+-----------------------------+
| 2022-01-03 |
+-----------------------------+
1 row in set (0.002 sec)
9. DATEDIFF
Fungsi DATEDIFF() adalah fungsi yang digunakan untuk menampilkan dua tanggal berbeda. Biasanya digunakan untuk menghitung dan menampilkan hasil selisih periode tanggal tertentu.
Sintaks:
DATEDIFF()
Contoh sintaks:
MariaDB [(none)]> SELECT DATEDIFF('2022-01-03','2020-05-10');
+-------------------------------------+
| DATEDIFF('2022-01-03','2020-05-10') |
+-------------------------------------+
| 603 |
+-------------------------------------+
1 row in set (0.002 sec)
10. MONTH
Fungsi MONTH() adalah fungsi yang digunakan untuk menampilkan bulan dari tanggal.
Sintaks:
MONTH(tanggal)
Contoh sintaks:
MariaDB [(none)]> SELECT MONTH('2022-01-03');
+---------------------+
| MONTH('2022-01-03') |
+---------------------+
| 1 |
+---------------------+
1 row in set (0.000 sec)
MariaDB [(none)]> SELECT MONTH(NOW()); --menampilkan bulan sekarang
+--------------+
| MONTH(NOW()) |
+--------------+
| 1 |
+--------------+
1 row in set (0.000 sec)
11. YEAR
Fungsi YEAR() adalah fungsi yang digunakan untuk menampilkan tahun dari tanggal.
Sintaks:
YEAR(tanggal)
Contoh sintaks:
MariaDB [(none)]> SELECT YEAR('2022-01-03');
+--------------------+
| YEAR('2022-01-03') |
+--------------------+
| 2022 |
+--------------------+
1 row in set (0.000 sec)
12. DAYNAME
Fungsi DAYNAME() adalah fungsi yang digunakan untuk menampilkan nama hari dari tanggal tertentu.
Sintaks:
DAYNAME(tanggal)
Contoh sintaks:
MariaDB [(none)]> SELECT DAYNAME('2022-01-03');
+-----------------------+
| DAYNAME('2022-01-03') |
+-----------------------+
| Monday |
+-----------------------+
1 row in set (0.003 sec)
13. MONTHNAME
Fungsi MONTHNAME() adalah fungsi yang digunakan untuk menampilkan nama bulan dari tanggal tertentu.
Sintaks:
MONTHNAME()
Contoh sintaks:
MariaDB [(none)]> SELECT MONTHNAME('2022-01-03');
+-------------------------+
| MONTHNAME('2022-01-03') |
+-------------------------+
| January |
+-------------------------+
1 row in set (0.001 sec)
14. DAYOFMONTH
Fungsi DAYOFMONTH() adalah fungsi yang digunakan untuk menampilkan hari dari tanggal tertentu.
Sintaks:
DAYOFMONTH()
Contoh sintaks:
MariaDB [(none)]> SELECT DAYOFMONTH('2022-01-03');
+--------------------------+
| DAYOFMONTH('2022-01-03') |
+--------------------------+
| 3 |
+--------------------------+
1 row in set (0.000 sec)
15. NOW
Fungsi NOW() adalah fungsi yang digunakan untuk menampilkan waktu dan tanggal saat ini, pada saat fungsi dijalankan.
Sintaks:
NOW()
Contoh sintaks:
MariaDB [(none)]> SELECT NOW();
+---------------------+
| NOW() |
+---------------------+
| 2022-01-03 14:27:37 |
+---------------------+
1 row in set (0.001 sec)
Menampilkan tahun sekarang
MariaDB [(none)]> SELECT YEAR(NOW());
+-------------+
| YEAR(NOW()) |
+-------------+
| 2022 |
+-------------+
1 row in set (0.000 sec)
Menampilkan bulan sekarang
MariaDB [(none)]> SELECT MONTH(NOW());
+--------------+
| MONTH(NOW()) |
+--------------+
| 1 |
+--------------+
1 row in set (0.000 sec)
Menampilkan waktu sekarang
MariaDB [(none)]> SELECT TIME(NOW());
+-------------+
| TIME(NOW()) |
+-------------+
| 14:33:18 |
+-------------+
1 row in set (0.000 sec)
Menampilkan hari sekarang
MariaDB [(none)]> SELECT DAY(NOW());
+------------+
| DAY(NOW()) |
+------------+
| 3 |
+------------+
1 row in set (0.000 sec)
16. DATE_FORMAT
Fungsi DATE_FORMAT() adalah fungsi yang digunakan untuk mengubah atau memanipulasi format tanggal dan waktu.
Sintaks:
DATE_FORMAT(tanggal, format)
Contoh sintaks:
MariaDB [(none)]> SELECT DATE_FORMAT('2022-01-03', '%M %d %Y');
+---------------------------------------+
| DATE_FORMAT('2022-01-03', '%M %d %Y') |
+---------------------------------------+
| January 03 2022 |
+---------------------------------------+
1 row in set (0.000 sec)
MariaDB [(none)]> SELECT DATE_FORMAT('2022-01-03', '%M/%d/%Y');
+---------------------------------------+
| DATE_FORMAT('2022-01-03', '%M/%d/%Y') |
+---------------------------------------+
| January/03/2022 |
+---------------------------------------+
1 row in set (0.001 sec)
MariaDB [(none)]> SELECT CONCAT_WS(', ', DAYNAME(NOW()), DATE_FORMAT(NOW(), '%M %d %Y'));
+-----------------------------------------------------------------+
| CONCAT_WS(', ', DAYNAME(NOW()), DATE_FORMAT(NOW(), '%M %d %Y')) |
+-----------------------------------------------------------------+
| Monday, January 03 2022 |
+-----------------------------------------------------------------+
1 row in set (0.000 sec)
Artikel terkait : Fungsi String MySQL