2014-12-27 35 views
0

你能告訴我在哪裏我可以INNER JOIN表的FK_roomTypesID,FK_BedTypeID和FK_roomViewsID?所有的FK都與主小組不同。加入兩個以上的表「不在」條款

MySqlDataAdapter da = new MySqlDataAdapter("SELECT RoomNo, RoomBedsNo, 
    RoomSmoking, RoomMiniBar,RoomKitchen,RoomFirePlace,RoomBalcony, RoomVeranda, 
    RoomGarden, RoomEntrance, RoomAirCondition, RoomTV, FK_roomTypesID, 
    FK_BedTypeID, FK_roomViewsID FROM tblrooms WHERE roomsID NOT IN(SELECT FK_roomsID 
    FROM tblbooking WHERE '" + arrdate + "' < checkOutDate AND '" + depdate + "' > 
    checkInDate)", conn); 
+2

您能告訴我們您的數據庫模型嗎? – 2014-12-27 18:22:56

+1

不,我們不能告訴您,因爲我們無法讀懂您的想法或查看數據庫中的表格。 – 2014-12-27 18:36:20

回答

1

您的查詢的以下部分:

FROM tblrooms 

你在你的FROM條款定義join S,因此,你應該修改上面類似的代碼:

FROM tblrooms 
join tblroomtypes 
on tblrooms.FK_roomTypesID = tblroomtypes.roomTypesID 
join tblbedtypes 
on tblrooms.FK_bedTypesID = tblbedtypes.bedTypesID 
join tblroomviews 
on tblrooms.FK_roomViewsID = tblroomviews.roomViewsID 

請注意,您沒有提供太多的信息,因此我在此猜測您的tablecolumn的名稱。另外請注意,我沒有選擇任何新的columns。最後,請注意,如果問題適用於您的案例,則需要通過將columns指定爲table的列來解決歧義問題。並且格式化您的代碼,很難閱讀它。我沒有使用inner關鍵字作爲joins,因爲join默認爲inner

+1

很好地完成了......有時那些帖子是模棱兩可的,我們必須做出準確的猜測他們有什麼/需要。他們也將學會調整未來的問題以涵蓋更多細節。 – DRapp 2014-12-27 21:31:58