![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL2UOnSkx1-s8obYAkfXdXQHkPNdx5WtC-1YPhI6B99vH1sEFf_eXvvUWOkma9MBM4sHFr21YNzSqiH2HvnlbbKZwYv8hlQmkz0f_7whhpjdU2ji5mO9zrVawR3lGUKrPPqSVRop7CRt0/s320/date+add.png)
Kali ini saya akan share bagaimana menambah bulan / hari / tahun dengan fungsi DATE_ADD.
Berikut ini penjelasannya.
Hari ini lagi bikin script PHP ketemu masalah ketika ingin menambahkan bulan pada field bertype DATE. Misalnya jika ada data 2010-12-01 maka saya harus bisa menambahkan bulannya tanpa menggangu tanggal-nya dan tahun akan otomatis berubah jika penambahan bulan tsb melebihi Desember.
Cari di Google plus nanya ke master MySQL (Mr.Furqon), dapet deh caranya.. dengan menggunakan fungsi DATE_ADD. Syntax-nya begini :
1
| DATE_ADD( date ,INTERVAL expr type) |
Contohnya begini :
1
2
3
4
5
| SELECT DATE_ADD(tgl_jtempo, INTERVAL 1 MONTH ) AS tgl_jtempo2; > 2010-12-25 SELECT DATE_ADD(tgl_jtempo, INTERVAL -1 MONTH ) AS tgl_jtempo2; > 2010-10-25 |
Simpel kan? Oya perintah parameter INTERVAL -nya juga bisa flexibel, kita juga bisa menambahkan hari, tahun, jam, menit, detik.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND ; -> 1998-01-01 00:00:00 mysql> SELECT INTERVAL 1 DAY + "1997-12-31" ; -> 1998-01-01 mysql> SELECT "1998-01-01" - INTERVAL 1 SECOND ; -> 1997-12-31 23:59:59 mysql> SELECT DATE_ADD( "1997-12-31 23:59:59" , INTERVAL 1 SECOND ); -> 1998-01-01 00:00:00 mysql> SELECT DATE_ADD( "1997-12-31 23:59:59" , INTERVAL 1 DAY ); -> 1998-01-01 23:59:59 mysql> SELECT DATE_ADD( "1997-12-31 23:59:59" , INTERVAL "1:1" MINUTE_SECOND); -> 1998-01-01 00:01:00 mysql> SELECT DATE_SUB( "1998-01-01 00:00:00" , INTERVAL "1 1:1:1" DAY_SECOND); -> 1997-12-30 22:58:59 mysql> SELECT DATE_ADD( "1998-01-01 00:00:00" , INTERVAL "-1 10" DAY_HOUR); -> 1997-12-30 14:00:00 mysql> SELECT DATE_SUB( "1998-01-02" , INTERVAL 31 DAY ); -> 1997-12-02 mysql> SELECT EXTRACT( YEAR FROM "1999-07-02" ); -> 1999 mysql> SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02 01:02:03" ); -> 199907 mysql> SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03" ); -> 20102 |
type Value | Expected expr format |
SECOND | SECONDS |
MINUTE | MINUTES |
HOUR | HOURS |
DAY | DAYS |
MONTH | MONTHS |
YEAR | YEARS |
MINUTE_SECOND | "MINUTES:SECONDS" |
HOUR_MINUTE | "HOURS:MINUTES" |
DAY_HOUR | "DAYS_HOURS" |
YEAR_MONTH | "YEARS-MONTHS" |
HOUR_SECOND | "HOURS:MINUTES:SECONDS" |
DAY_MINUTE | "DAYS HOURS:MINUTES" |
DAY_SECOND | "DAYS HOURS:MINUTES:SECONDS" |
Semoga bermanfaat.
Referensi : http://blog.riswan.com/
Menambah bulan / hari / tahun dengan fungsi DATE_ADD
Reviewed by Syawaluddin Amin, S.Kom
on
Januari 22, 2014
Rating:
![Menambah bulan / hari / tahun dengan fungsi DATE_ADD](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL2UOnSkx1-s8obYAkfXdXQHkPNdx5WtC-1YPhI6B99vH1sEFf_eXvvUWOkma9MBM4sHFr21YNzSqiH2HvnlbbKZwYv8hlQmkz0f_7whhpjdU2ji5mO9zrVawR3lGUKrPPqSVRop7CRt0/s72-c/date+add.png)
Tidak ada komentar: