TELAH DIBUKA !!!

Toko Ebook Tutorial "RosihanAri.Net"


Free Ebook Tutorial from Rosihan Ari's Blog

Tutorial Javascript | Tutorial PHP | Tutorial AJAX | Tutorial CSS | Tutorial FPDF | Tutorial Wordpress | Tutorial Java SE


 photo 300x250_zpsff09f9e7.gif
Slot iklan tersedia, pasang iklan di atas

Ebook yang direkomendasikan untuk Anda
Kunjungi Toko Ebook RosihanAri.Net

Mencari Selisih Waktu dan Tanggal dengan SQL


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

GampSMS SMS Gateway

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 ??


Baca Juga Artikel Terkait
Tidak ada artikel yang berhubungan


 photo 300x250_zpsff09f9e7.gif
Slot iklan tersedia, pasang iklan di atas


Kata kunci:


Ada 22 komentar dalam artikel ini.



  1. M.Linin says:

    Mas bgmana klo mencari selisih waktu tetapi time2-nya adalah konstanta misalnya 07:30 ? Terima kasih

  2. nasir says:

    Saya membuat rentang waktu untuk pendaftaran, bila di luar waktu itu tdk bisa melakukan pendaftaran . . gimana caranya ya pak . trimakasih

    • rosihanari says:

      @nasir: itu pakai IF saja mas… Baca tanggal sekarang, lalu setiap kali submit, cek apakah tanggal sekarang lebih kecil atau sama dengan tanggal batas waktunya. Jika ya, maka simpan datanya. Jika tidak, muncul peringatan.

  3. shohibul says:

    Mas, untuk buat laporan sampai pada bulan yang lalu. gimana caranya mas. thanks

  4. Prabowo says:

    mas, ceritanya saya sedang buat report pembuatan tiket dan handling tiketnya berapa lama nih. hari kerja senin sampai jumat 21 jam dan sabtu hanya 15 jam kerja. role perhitungannya bagaimana ya mas yang benar? apakah cek tanggal waktu pembuatan dulu baru cek hari pembuatan, atau cek harinya dulu baru cek tanggal buatnya dulu? setelah itu baru hitung selisih waktunya.
    mohon penjelasannya.
    terima kasih.

  5. Wayan says:

    bagaimana caranya menghapus data secara otomatis



 

Komentar/pertanyaan Anda!

Mohon maaf, komentar/pertanyaan yang menggunakan email palsu atau komentar bernada negatif, cemooh, umpatan, cacian atau sejenisnya secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil

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

Mohon maaf jika seandainya ada beberapa pertanyaan Anda yang tidak direspon atau ditanggapi mengingat banyaknya komentar yang masuk dan keterbatasan kemampuan/ilmu saya dalam menjawab pertanyaan satu persatu. Saya harap Anda bisa memahami dan memakluminya.

Semua komentar atau pertanyaan yg masuk tidak akan langsung tampil di halaman ini, karena akan dimoderasi dahulu.


*