Tambahkan 2 jam ke waktu sekarang di MySQL?


177

Sintaks yang valid dari kueri ini di MySQL?

SELECT * FROM courses WHERE (now() + 2 hours) > start_time

catatan: start_time adalah bidang tabel kursus

Jawaban:





25

Fungsi DATE_ADD () akan melakukan trik. (Anda juga dapat menggunakan fungsi ADDTIME () jika Anda menjalankan setidaknya v4.1.1.)

Untuk permintaan Anda, ini akan menjadi:

SELECT * 
FROM courses 
WHERE DATE_ADD(now(), INTERVAL 2 HOUR) > start_time

Atau,

SELECT * 
FROM courses 
WHERE ADDTIME(now(), '02:00:00') > start_time

Kalau saja ada contoh.
— TMS

Dokumentasi memiliki beberapa contoh yang baik (dan SO tidak dimaksudkan untuk menjadi pengganti untuk dokumentasi). Tetapi untuk kepentingan pertanyaan ini dan pengunjung masa depan, saya telah menambahkan kedua sintaksis.
— lc.

1

Ini juga akan berfungsi

SELECT NAME 
FROM GEO_LOCATION
WHERE MODIFY_ON BETWEEN SYSDATE() - INTERVAL 2 HOUR AND SYSDATE()
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.