我有一個表:SQL操作日期查詢,找到之間的日期迄今
rommbookinfo
(
hotel_id
, room_no
, start_date
, end_date
);
現在,我必須執行一個查詢發現房間對於未在預訂指定酒店(酒店ID)日期範圍(即在DATE1和date2之間)
SELECT *
FROM tbl_roombook
WHERE hotel_id = '2'
AND start_date NOT BETWEEN 12/17/2011 AND 12/19/2011
OR end_date NOT BETWEEN 12/17/2011 AND 12/19/2011
,但它引發以下錯誤:
#1064 - You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near
''SELECT * FROM tbl_roombook WHERE hotel_id='2' AND start_date' at line 1
你的問題是什麼?什麼不工作?你期望的輸入/輸出是什麼? – ajreal
@Boruah - 語法錯誤是因爲日期需要在引號中。這並不重要 - 你的查詢無論如何不會起作用。 Charles Bretana的解決方案看起來應該起作用。請嘗試一下,如果有,請將其標記爲「已接受」! – paulsm4
這段代碼在哪裏被調用,我認爲單引號導致你的問題 – Sparky