2012-11-28 36 views
0

我有如下表:檢查抵達日期和離開是範圍的mysql內

id  travelStart travelExpires 
1  2012-11-12 2013-01-31 
1  2012-11-12 2013-01-31 

和下面是我的到達和離開日期:

arrival date: 2012-12-28 
departure date : 2012-12-30 

我要檢查抵港及離港日期在travelStart和travelEnd之間。如何爲它編寫mysql查詢。

回答

0

你的答案有最簡單的解決方案,MySQL中的BETWEEN運算符。工作原理:

SELECT * from YourTable WHERE (:arrivalDate BETWEEN travelStart AND travelExpires) AND (:departureDate BETWEEN travelStart AND travelExpires) 

顯然需要綁定的:arrivalDate:departureDate參數。

+0

'$結果= $ DB-> fetchRow(「SELECT * FROM表名WHERE bookingStart和bookingExpires AND(($ travelStart BETWEEN travelStart和travelExpires)AND($ travelEnd之間CURDATE() 「travelStart AND travelExpires)」,array($ couponcode));' – Sky

+0

以上是我的查詢...它顯示了一些語法錯誤 – Sky

+0

您錯過了一個右括號AND travelExpires)) –

0

嘗試此查詢

select * from table where (arrival_date<=travelStart AND arrival_date<=travelExpires) AND (departure_date>=travelStart AND departure_date<=travelExpires)