2016-04-08 15 views
0

Sadece hızlı bir sorum var, bir taksi rezervasyon sistemi yapıyorum. SQL'de sonraki 2 saat içinde rezervasyonları seçerek sorunları bulmaktayım. Tümünü seçtiğimde görünmesi için tüm rezervasyona ihtiyacım yok, yalnızca sorguyu çalıştırdığımdan iki saat içinde istiyorum.MySQL içinde zaman aralığını seçmede sorun var

$query= "select Booking_No, 
    Email_Address, 
    Customer_Name, 
    Passenger_Name, 
    Phone_No, 
    concat(Unit_Number,'/', Street_Number,' ', Street_Name,',', Suburb) as Unit_Number, 
    Destination_Suburb, 
    Pickup_Date, 
    Pickup_Time from Booking1 
    where status = 'false' 
    and 
    (Pickup_Time >= DATE_FORMAT(NOW(), '%h:00:00') and 
    Pickup_Time <= DATE_FORMAT(NOW(), '%h') + interval 2 hour)"; 
+1

Peki, bunu çalıştırdığınızda ne olur? – Machavity

+0

Bu kodu çalıştırdığımda, rezervasyonları saatte aynı saatte alabiliyorum. Örneğin. Şimdi saat 10:30 diyelim. Çalıştığımda, tüm rezervasyonları saat 10: 00'dan 10: 59'a kadar alacağım ve sonraki 2 saat içinde istemiyorum. –

cevap

0

WHERE maddesindeki 'BETWEEN' deyimini kullanın. ŞİMDİ

WHERE status = 'false' AND Pickup_Time BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 2 HOUR) 

() tarih/saat nesnesi, DATE_ADD() tarih/saat nesnesi döndüren döndürür. Pickup_Time öğeniz bir tarih/saat nesnesi olduğu sürece, bu bir tedavi gibi çalışacaktır!

İlgili konular