Pertama di Indonesia: "Murottal Al Qur'an + Terjemahan" dalam bentuk CD MP3 Original (Coba dulu FREE)
SEO Complete Guide for Wordpress

Ingin beriklan di atas?


Dapatkan Script SMS Gateway PHP + MySQL

Seperti: software pengirim SMS massal, SMS survei, SMS polling, SMS quick count, SMS dakwah, Web2SMS dan masih banyak lagi... semuanya berbasis PHP & MySQL
[Info Lengkap...]


Mencari Selisih Waktu dan Tanggal dengan SQL


June 25th, 2008 | by rosihanari | Cetak Artikel Ini Cetak Artikel Ini

Instant Internet Business Ideas
Ingin beriklan di atas?

Anda bingung untuk mencari selisih waktu dan tanggal dalam aplikasi yang Anda buat? Jangan khawatir, dengan statement SQL, Anda dapat mencarinya dengan mudah.

Apabila Anda familiar dengan PHP, maka setahu saya tidak ada function dalam PHP yang dapat digunakan untuk mencari selisih waktu dan tanggal secara instan, atau tinggal pakai. Namun Anda terlebih dahulu membuatnya sendiri, dan itu tentu saja butuh waktu banyak.

Nah… artikel ini akan membahas bagaimana mencari selisih waktu dan tanggal dengan menggunakan statement SQL.

Untuk mencari selisih tanggal (dalam satuan hari) dengan menggunakan SQL, sintaksnya adalah sebagai berikut:

SELECT datediff('tgl1', 'tgl2');

dengan tgl1 dan tgl2 adalah tanggal-tanggal yang akan dicari selisihnya. Adapun format tanggal nya adalah th-bln-tgl.

Apabila tgl1 < tgl2, maka akan diperoleh selisih hari bernilai negatif. Sedangkan apabila tgl1 > tgl2, maka akan diperoleh selisih hari yang bernilai positif.

Sebagai contoh, akan dicari selisih hari antara tgl 01/01/2008 dan 10/01/2008. Berikut ini adalah statement SQL nya.

SELECT datediff('2008-01-10','2008-01-01');

Dari perintah di atas akan diperoleh hasilĀ  9 (artinya 9 hari)

Bagaimana dengan selisih waktu? Untuk mencari selisih dari 2 buah waktu, sintaks SQL nya adalah:

SELECT timediff('time1', 'time2');

Format time1 dan time2 dapat berupa waktu dalam jam (jam:menit:detik) atau tanggal saja (th-bln-tgl) atau bahkan gabungan jam dan tanggal (th-bln-tgl jam:menit:detik).

Perintah SQL ini akan menghasilkan output dalam format jam (jam:menit:detik).

Sebagai contoh akan dicari selisih waktu antara jam 13:00 dan 15:01. Perintah SQL nya

SELECT timediff('13:00', '15:01');

Perintah ini akan menghasilkan 2:01:00 (2 jam, 1 menit, 0 detik).

Contoh lain akan dicari selisih waktu antara tanggal 01/01/2008 jam 10:01 dengan 02/01/2008 jam 10:02.

SELECT timediff('2008-01-02 10:02', '2008-01-01 10:01');

Perintah di atas akan menghasilkan 24:01:00 (24 jam, 1 menit, 0 detik).

Gampang bukan ??


Beberapa artikel terkait


Share this article on:

Kata kunci:


Ada 5 komentar dalam artikel ini.

  1. [...] Anda membaca artikel saya tentang mencari selisih waktu dan tanggal dengan SQL? Kalau belum, sebaiknya baca artikel tersebut terlebih dahulu karena artikel ini terkait dengan [...]

  2. mgman says:

    Pak rosihanari.

    Bagaimana jika format waktunya memakai AM dan PM.

    Thanks.

  3. rosihanari says:

    to mgman: mmm… sepertinya untuk time formatnya hanya dalam bentuk hh:mm:ss saja mas. Untuk jamnya mulai dari 00 – 23.

  4. Indra says:

    pak gimana caranya menambah hari, misalnya tanggal 17 oktober 2009 ditambah 10 hari jadi tanggal 27 oktober 2009

  5. Bambang Puji says:

    Terimakasih mas, berguna sekali buat saya.



Tolong beri komentar donk!

Komentar Anda akan berguna untuk kemajuan blog ini.


Mohon maaf, komentar yang menggunakan email palsu atau komentar bernada negatif atau cemooh secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil dalam daftar komentar.

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

*
Untuk membuktikan bahwa komentar Anda bukan spam, tulis kata yang muncul dalam gambar di bawah ini. Bila Anda tidak bisa membaca kata dalam gambar, klik pada gambar tersebut untuk mendengarkan suara dari kata tersebut
Click to hear an audio file of the anti-spam word