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.
contoh:
SELECT datediff(’2011-01-10′,’2011-01-01′);
Dari perintah di atas akan diperoleh hasil 9 (artinya 9 hari)
contoh pada database perpustakaan untuk menghitung keterlambatan pengembalian buku dari tanggal yang sudah ditentukan :
telat : Datediff("D";[tgl_kembali];Date());
#untuk mencari selisih hari antara
tanggal sekarang (Date()) dengan
ketentuan tanggal kembali (tgl_kembali) dan hasilnya disimpan dalam field
telat
contoh menghitung lama kerja
lama_kerja : Int((Date())-[tgl_masuk])/365);
#untuk mencari lama kerja dalam bentuk tahun yang diperoleh dari pengurangan tanggal sekarang dengan tanggal masuk. Fungsi Int untuk mengambil bilangan bulat atau bilangan disebelah kiri titik desimal.
Sedangkan 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/2011 jam 10:01 dengan 02/01/2011 jam 10:02.
SELECT timediff(’2011-01-02 10:02′, ’2011-01-01 10:01′);
Perintah di atas akan menghasilkan 24:01:00 (24 jam, 1 menit, 0 detik).
*Menipulasi Data Tanggal dan Expression