Menampilkan Nama Hari Dari Tanggal Tertentu - MySQL Dasar #31

Untuk dapat menampilkan nama hari pada tanggal tertentu kita bisa menggunakan fungsi DAYNAME(). Anda menambahkan interval waktu tertentu untuk menghitung hari tertentu misalnya hari pertama dan terkahir pada bulan sebelumnya atau bulan ini, atau hari pertama pada minggu tertentu.

Proses ini juga hampir mirip dengan tutorial sebelumnya untuk mencari hari pertama dan terakhir pada bulan tertentu atau menghitung panjang bulan, hanya saja disini kita hanya perlu menambahkan parameter DAYNAME didalamnya

Menampilkan Nama Hari Pertama dan Terakhir pada Bulan ini

Misalnya Anda ingin menampilkan nama hari pertama pada sebuah data tanggal yang terdapat pada tabel, maka Anda bisa menggunakan query berikut :

MariaDB [root93]> SELECT d, DAYNAME(DATE_SUB(d, INTERVAL DAYOFMONTH(d)-1 DAY)) AS hari FROM tanggal;
+------------+----------+
| d          | hari     |
+------------+----------+
| 1980-02-03 | Friday   |
| 1990-10-12 | Monday   |
| 2000-12-21 | Friday   |
| 2012-12-12 | Saturday |
| 2022-04-24 | Friday   |
| 2022-04-23 | Friday   |
| 2022-04-25 | Friday   |
+------------+----------+
7 rows in set (0.03 sec)

MariaDB [root93]> SELECT d, DAYNAME(DATE_SUB(DATE_ADD(DATE_SUB(d, INTERVAL DAYOFMONTH(d)-1 DAY), INTERVAL 1 MONTH), INTERVAL 1 DAY)) AS hari FROM tanggal;
+------------+-----------+
| d          | hari      |
+------------+-----------+
| 1980-02-03 | Friday    |
| 1990-10-12 | Wednesday |
| 2000-12-21 | Sunday    |
| 2012-12-12 | Monday    |
| 2022-04-24 | Saturday  |
| 2022-04-23 | Saturday  |
| 2022-04-25 | Saturday  |
+------------+-----------+
7 rows in set (0.00 sec)

Menampilkan Nama Hari Terakhir pada Bulan Sebelumnya dan Selanjutnya

Selanjutnya jika Anda ingin mengetahui nama hari pertama dan terakhir pada bulan sebelumnya dan selanjutnya. Anda bisa melihat contoh berikut

MariaDB [root93]> SELECT d, DAYNAME(DATE_SUB(d, INTERVAL DAYOFMONTH(d) DAY)) AS 'hari terkahir bln sebelumnya' FROM tanggal;
+------------+------------------------------+
| d          | hari terkahir bln sebelumnya |
+------------+------------------------------+
| 1980-02-03 | Thursday                     |
| 1990-10-12 | Sunday                       |
| 2000-12-21 | Thursday                     |
| 2012-12-12 | Friday                       |
| 2022-04-24 | Thursday                     |
| 2022-04-23 | Thursday                     |
| 2022-04-25 | Thursday                     |
+------------+------------------------------+
7 rows in set (0.00 sec)

MariaDB [root93]> SELECT d,
    -> DAYNAME(DATE_SUB(DATE_ADD(DATE_SUB(d, INTERVAL DAYOFMONTH(d)-1 DAY), INTERVAL 2 MONTH), INTERVAL 1 DAY))
    -> AS 'hari terakhir bln selanjutnya' FROM tanggal;
+------------+-------------------------------+
| d          | hari terakhir bln selanjutnya |
+------------+-------------------------------+
| 1980-02-03 | Monday                        |
| 1990-10-12 | Friday                        |
| 2000-12-21 | Wednesday                     |
| 2012-12-12 | Thursday                      |
| 2022-04-24 | Tuesday                       |
| 2022-04-23 | Tuesday                       |
| 2022-04-25 | Tuesday                       |
+------------+-------------------------------+
7 rows in set (0.00 sec)

Menampilkan Hari/Tanggal Pertama dan Terakhir Pada Minggu Tertentu

Untuk menampilkan nama hari pertama dan terkahir dari sebuah minggu tertentu Anda bisa menggunakan fungsi DAYOFWEEK. Fungsi DAYOFWEEK akan mengembalikan nilai/nomor hari pada minggu tertentu dalam nomor(1-7)

MariaDB [root93]> SELECT DAYNAME(CURDATE()),CURDATE(), DATE_ADD(CURDATE(), INTERVAL 1-DAYOFWEEK(CURDATE()) DAY) AS 'Minggu pertama dari tgl ini';
+--------------------+------------+-----------------------------+
| DAYNAME(CURDATE()) | CURDATE()  | Minggu pertama dari tgl ini |
+--------------------+------------+-----------------------------+
| Friday             | 2022-05-27 | 2022-05-22                  |
+--------------------+------------+-----------------------------+
1 row in set (0.00 sec)

MariaDB [root93]> SELECT DAYNAME(CURDATE()), CURDATE(), DATE_ADD(CURDATE(), INTERVAL 7-DAYOFWEEK(CURDATE()) DAY) AS 'Sabtu pertama dari tgl ini';
+--------------------+------------+----------------------------+
| DAYNAME(CURDATE()) | CURDATE()  | Sabtu pertama dari tgl ini |
+--------------------+------------+----------------------------+
| Friday             | 2022-05-27 | 2022-05-28                 |
+--------------------+------------+----------------------------+
1 row in set (0.00 sec)

Selanjutnya :

0 Response to "Menampilkan Nama Hari Dari Tanggal Tertentu - MySQL Dasar #31"

Post a Comment

Silahkan untuk meninggalkan komentar, santai saja dan mulailah berkomentar...