我希望有人可以在這裏給我一些幫助...顯示在日期間的可用客房? SQL
我正在爲酒店編程一個小預訂程序,在那裏我應該能夠看到兩個給定日期之間的可用房間列表。我遇到了一個問題,因爲如果我搜索到達日期是在預訂到達日期之後,房間仍然會顯示爲可用...
我對數據庫的調用如下所示:
String SQLString = "select roomnumber, roomtypeid from rooms "
+ "where roomnumber not in "
+ "(select roomnumber from booking "
+ "where arrival between to_date(?, 'yyyy-mm-dd') "
+ "and to_date(?, 'yyyy-mm-dd')) and roomtypeid = ? order by roomnumber";
我已經嘗試了一些不同的SQL字符串組合,但沒有什麼幫助。任何人都可以給我一個好的提示嗎?
CREATE TABLE BOOKING(
ARRIVAL DATE ,
DEPARTURE DATE,
RESERVATIONSNUMBER INTEGER NOT NULL PRIMARY KEY,
ROOMNUMBER INTEGER,
PAID INTEGER,
CUSTOMERID INTEGER,
NUMBEROFGUESTS INTEGER,
CONSTRAINT BOFK FOREIGN KEY(ROOMNUMBER) REFERENCES ROOMS(ROOMNUMBER),
CONSTRAINT CUIDFK FOREIGN KEY(CUSTOMERID) REFERENCES CUSTOMER(CUSTOMERID));
你能否提供更多關於你的數據庫的信息?預訂表如何定義? – Icewind
你可以添加純SQL嗎? –
我將爲預訂表添加sql。 – Englund0110