Pendahuluan
Ada beberapa cara untuk menambahkan tanggal dan jam tertentu di MySQL, yaitu :
- Menggunakan operator plus (+) dan minus (-) diikuti keyword INTERVAL dan unit dari Interval.
- Menggunakan fungsi-fungsi berikut :
- DATE_ADD, digunakan untuk menambahkan jumlah hari atau interval waktu pada tanggal tertentu.
- DATE_SUB, digunakan untuk mengurangi interval waktu pada tanggal tertentu.
- ADDDATE, digunakan untuk menambahkan jumlah hari atau interval waktu pada tanggal tertentu.
- SUBDATE, digunakan untuk mengurangi jumlah hari atau interval waktu pada tanggal tertentu.
- SUBTIME, digunakan untuk mengurangi dari dua ekspresi waktu (time atau datetime).
- PERIOD_ADD, menambahkan jumlah bulan pada periode tertentu. Periode tersebut dalam format YYMM atau YYYYMM.
Bagian berikut di bawah menunjukkan contoh-contoh penggunaan dari operator dan fungsi tersebut di atas.
- Menggunakan operator plus (+) dan minus (-) diikuti keyword INTERVAL dan unit dari Interval.
- Menggunakan fungsi-fungsi berikut :
- DATE_ADD, digunakan untuk menambahkan jumlah hari atau interval waktu pada tanggal tertentu.
- DATE_SUB, digunakan untuk mengurangi interval waktu pada tanggal tertentu.
- ADDDATE, digunakan untuk menambahkan jumlah hari atau interval waktu pada tanggal tertentu.
- SUBDATE, digunakan untuk mengurangi jumlah hari atau interval waktu pada tanggal tertentu.
- SUBTIME, digunakan untuk mengurangi dari dua ekspresi waktu (time atau datetime).
- PERIOD_ADD, menambahkan jumlah bulan pada periode tertentu. Periode tersebut dalam format YYMM atau YYYYMM.
Bagian berikut di bawah menunjukkan contoh-contoh penggunaan dari operator dan fungsi tersebut di atas.
Menggunakan Operator Plus dan Minus
Contoh penggunaannya operator plus minus ( + / - ) adalah sebagai berikut :
SELECT '2010-01-01 00:00:00' + INTERVAL 1 DAY; -- Menambahkan 1 hari
SELECT '2010-01-01 00:00:00' - INTERVAL '30' MINUTE; -- Mengurangi 30 menit
SELECT '2010-01-01 00:00:00' - INTERVAL '1-3' YEAR_MONTH; -- Mengurangi 1 tahun dan 3 bulan
SELECT '2010-01-01' + INTERVAL '2' MONTH; -- Menambahkan 2 bulan
SELECT '2010-01-01' + INTERVAL '2-6' YEAR_MONTH; -- Menambahkan 2 tahun dan 6 bulan
SELECT '2010-01-01' - INTERVAL '1-3' YEAR_MONTH; -- Mengurangi 1 tahun dan 3 bulan
-- Menambahkan interval 3 tahun pada field tgl_transaksi dari database PHI-Minimart
SELECT tgl_transaksi + INTERVAL '3' YEAR from tr_penjualan;
Untuk rincian mengenai INTERVAL, silahkan klik halaman wiki pada link ini.
Contoh penggunaannya operator plus minus ( + / - ) adalah sebagai berikut :
SELECT '2010-01-01 00:00:00' + INTERVAL 1 DAY; -- Menambahkan 1 hari
SELECT '2010-01-01 00:00:00' - INTERVAL '30' MINUTE; -- Mengurangi 30 menit
SELECT '2010-01-01 00:00:00' - INTERVAL '1-3' YEAR_MONTH; -- Mengurangi 1 tahun dan 3 bulan
SELECT '2010-01-01' + INTERVAL '2' MONTH; -- Menambahkan 2 bulan
SELECT '2010-01-01' + INTERVAL '2-6' YEAR_MONTH; -- Menambahkan 2 tahun dan 6 bulan
SELECT '2010-01-01' - INTERVAL '1-3' YEAR_MONTH; -- Mengurangi 1 tahun dan 3 bulan
-- Menambahkan interval 3 tahun pada field tgl_transaksi dari database PHI-Minimart
SELECT tgl_transaksi + INTERVAL '3' YEAR from tr_penjualan;
Untuk rincian mengenai INTERVAL, silahkan klik halaman wiki pada link ini.
Penggunaan DATE_ADD
Syntax :
DATE_ADD(date, INTERVAL expr unit)
Contoh :
SELECT DATE_ADD('2010-01-01', INTERVAL 3 MINUTE); -- menambahkan 3 minute
SELECT DATE_ADD('2010-01-01 00:00:00', INTERVAL '2-6' YEAR_MONTH); -- menambahkan 2 tahun 6 bulan
-- Menambahkan 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT DATE_ADD(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
Syntax :
DATE_ADD(date, INTERVAL expr unit)
Contoh :
SELECT DATE_ADD('2010-01-01', INTERVAL 3 MINUTE); -- menambahkan 3 minute
SELECT DATE_ADD('2010-01-01 00:00:00', INTERVAL '2-6' YEAR_MONTH); -- menambahkan 2 tahun 6 bulan
-- Menambahkan 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT DATE_ADD(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
Penggunaan DATE_SUB
Syntax :
DATE_SUB(date, INTERVAL expr unit)
Contoh :
SELECT DATE_SUB('2010-01-01', INTERVAL 3 MINUTE); -- mengurangi 3 minute
SELECT DATE_SUB('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT DATE_SUB(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
Syntax :
DATE_SUB(date, INTERVAL expr unit)
Contoh :
SELECT DATE_SUB('2010-01-01', INTERVAL 3 MINUTE); -- mengurangi 3 minute
SELECT DATE_SUB('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT DATE_SUB(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
SELECT DATE_SUB('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT DATE_SUB(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
Penggunaan ADDDATE
Ada 2 jenis syntax yang berlaku untuk fungsi ADDDATE ini, yaitu :
ADDDATE(date, INTERVAL expr unit)
atau
ADDDATE(expr, days)
Contoh :
SELECT ADDDATE('2010-01-01', INTERVAL 3 MINUTE); -- menambahkan 3 minute
SELECT ADDDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- menambahkan 2 tahun 2 bulan
SELECT ADDDATE('2010-01-01 00:00:00', 3); -- menambahkan 3 hari
-- Menambahkan 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Menambahkan 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, 7) FROM tr_penjualan;
Ada 2 jenis syntax yang berlaku untuk fungsi ADDDATE ini, yaitu :
ADDDATE(date, INTERVAL expr unit)
atau
ADDDATE(expr, days)
SELECT ADDDATE('2010-01-01', INTERVAL 3 MINUTE); -- menambahkan 3 minute
SELECT ADDDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- menambahkan 2 tahun 2 bulan
SELECT ADDDATE('2010-01-01 00:00:00', 3); -- menambahkan 3 hari
-- Menambahkan 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Menambahkan 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, 7) FROM tr_penjualan;
SELECT ADDDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- menambahkan 2 tahun 2 bulan
SELECT ADDDATE('2010-01-01 00:00:00', 3); -- menambahkan 3 hari
-- Menambahkan 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Menambahkan 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT ADDDATE(tgl_transaksi, 7) FROM tr_penjualan;
Penggunaan SUBDATE
Syntax :
SUBDATE(date, INTERVAL expr unit)
atau
SUBDATE(expr, days)
Contoh :
SELECT SUBDATE('2010-01-01', INTERVAL 3 MINUTE); -- mengurangi 3 minute
SELECT SUBDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
SELECT SUBDATE('2010-01-01 00:00:00', 3); -- mengurangi 3 hari
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Mengurangi 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, 7) FROM tr_penjualan;
Syntax :
SUBDATE(date, INTERVAL expr unit)
atau
SUBDATE(expr, days)
Contoh :
SELECT SUBDATE('2010-01-01', INTERVAL 3 MINUTE); -- mengurangi 3 minute
SELECT SUBDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
SELECT SUBDATE('2010-01-01 00:00:00', 3); -- mengurangi 3 hari
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Mengurangi 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, 7) FROM tr_penjualan;
SELECT SUBDATE('2010-01-01 00:00:00', INTERVAL '2-2' YEAR_MONTH); -- mengurangi 2 tahun 2 bulan
SELECT SUBDATE('2010-01-01 00:00:00', 3); -- mengurangi 3 hari
-- Mengurangi 12 jam pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, INTERVAL 12 HOUR) FROM tr_penjualan;
-- Mengurangi 7 hari pada field tgl_transaksi pada table tr_penjualan di database PHI-Minimart
SELECT SUBDATE(tgl_transaksi, 7) FROM tr_penjualan;
Penggunaan SUBTIME
Syntax :
SUBTIME(ekspresi_tanggal_waktu, ekspresi_waktu)
Contoh :
SELECT SUBTIME('2010-01-01 00:00:00', '11:00:00'); -- mengurangi 12 jamSELECT SUBTIME('2010-01-01 12:00:00', '1'); -- mengurangi 1 detikSELECT SUBTIME('2010-01-01 12:00:00', '1:0:0.000000'); -- mengurangi 1 jamSELECT SUBTIME('2010-01-01 12:00:00', '1:1'); -- mengurangi 1 jam dan 1 menitSELECT SUBTIME('2010-01-01 12:00:00', '1 1:1'); -- mengurangi 1 hari, 1 jam dan 1 menit
Syntax :
SUBTIME(ekspresi_tanggal_waktu, ekspresi_waktu)
Contoh :
SELECT SUBTIME('2010-01-01 00:00:00', '11:00:00'); -- mengurangi 12 jamSELECT SUBTIME('2010-01-01 12:00:00', '1'); -- mengurangi 1 detikSELECT SUBTIME('2010-01-01 12:00:00', '1:0:0.000000'); -- mengurangi 1 jamSELECT SUBTIME('2010-01-01 12:00:00', '1:1'); -- mengurangi 1 jam dan 1 menitSELECT SUBTIME('2010-01-01 12:00:00', '1 1:1'); -- mengurangi 1 hari, 1 jam dan 1 menit
Penggunaan PERIOD_ADD
Syntax :
PERIOD_ADD(year_month_period, months)
Keterangan :
- year_month_period adalah dalam format YYMM atau YYYYMM.
Contoh :
SELECT PERIOD_ADD('201001',3); -- Menambahkan 3 bulan pada Januari 2010
SELECT PERIOD_ADD('1001',3); -- Menambahkan 3 bulan pada Januari 2010
SELECT PERIOD_ADD('201001',-3); -- Mengurangi 3 bulan pada Januari 2010
Syntax :
PERIOD_ADD(year_month_period, months)
- year_month_period adalah dalam format YYMM atau YYYYMM.
SELECT PERIOD_ADD('201001',3); -- Menambahkan 3 bulan pada Januari 2010
SELECT PERIOD_ADD('1001',3); -- Menambahkan 3 bulan pada Januari 2010
SELECT PERIOD_ADD('201001',-3); -- Mengurangi 3 bulan pada Januari 2010
SELECT PERIOD_ADD('1001',3); -- Menambahkan 3 bulan pada Januari 2010
SELECT PERIOD_ADD('201001',-3); -- Mengurangi 3 bulan pada Januari 2010
Sumber Referensi
http://mysql.phi-integration.com/sql/fungsi-tanggal-dan-waktu/menambahkan-dan-mengurangi-waktu-di-mysql
No comments:
Post a Comment