2016-04-14 17 views
2

Güncel tarihini kullanarak veritabanımdan sonuçları alıyorum.MySQLi CURDATE() bugün ve yarın 2 saat içinde mi?

Benim geçerli kod şöyle görünür:

$sql = "SELECT * 
     FROM `1ymzj0g_orders` 
     WHERE `processed` = '1' 
     AND DATE(`order_date`) = CURDATE() LIMIT 100"; 

benim durumlar için, bugüne gelen sonuçları almak gerekiyor rağmen bu BUGÜN sonuçları almak için büyük ve 2 am kadar yarın sabah.

Şu anki düzen altında gece yarısından sonra tahmin edeceğim sonuçlarım netleşecek, ancak sonuçları gece yarısından sonra tutmam gerekiyor, ancak iki gün boyunca değil, sadece 2'ye kadar.

Bu mümkün mü? Ve eğer öyleyse bana biraz tavsiye verebilir misiniz?

+0

bu ne yapmalıdır? Ertesi gün iki saat mi, yoksa üç mü? – tadman

+0

Oh Vay, o kadar ileride düşünmemiştim bile ... Ben dükkanın saat 3'e kadar açık kaldığını düşünemediğim için hala 2 am limitini tahmin ediyorum. Gerektiğinde onu her zaman yapılandırabilirim. – Snappysites

+0

Demek istediğim 2am, yılın gününe göre gece yarısından sonra 1, 2 veya 3 saattir. Akılda tutulması gereken bir şey. Burada seçtiğiniz saat, DST'nin başladığı andan itibaren bir saatlik pencerede rastgele. – tadman

cevap

1

ORDER_DATE buna benzer bazı şey bir sınır ayarlamak üzere bir SAAT aralığı ile DATE_ADD kullanabilirsiniz: Bir Yaz Saati değişikliği sırasında

WHERE DATE(`order_date`) = CURDATE() OR DATE(`order_date`) < DATE_ADD(CURDATE(), INTERVAL + 12 HOUR) 
+2

Bu, -12 yerine -2 SAAT değil mi? –

+1

'DATE_ADD (CURDATE(), INTERVAL + 26 HOUR)' (yarın 2'ye kadar) – fusion3k

+0

Eğer +24 saat eklediysem, bugün ve bu gece yarısından sonraki tüm sonuçları bana bugünkü 2 am'a kadar olan tüm sonuçları verecek? – Snappysites

İlgili konular