2017-07-29 54 views
0

其實我很困惑從MySql DB獲取數據。我有兩個表RoomDentist。在Dentist Form我使用Combobox顯示RoomID如下圖所示與紅cricle。在那Combobox我想只顯示那些RoomID,沒有DentistID。這將是MySql Query從MySQL中檢索數據的特定記錄已不存在

screenshot of my form

兩個表Room & DentistDataBase照片是如下。在Room TableInchargeIDDentist Table,DentistID兩者都是相同的不同名稱。

enter image description here

enter image description here

+0

爲什麼'java'和'php'? –

+1

這些是表格,而不是數據庫。下次請參閱https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple- sql-query - 牙醫真的永遠不會有多個房間?無論哪種方式,兩名牙醫似乎不太可能用不同的名字來指稱同一個房間。 – Strawberry

+0

看來你在MS Paint中做了註釋! :D –

回答

1

從你的問題,我認爲你需要房間ID不分配給任何牙醫。所以你可以從以下查詢中得到它:

SELECT Room.RoomID FROM Room WHERE Room.RoomID NOT IN (SELECT Dentist.RoomID FROM Dentist); 
+0

非常感謝......通過修改您的答案,我得到了我的問題的解決方案。 :-) –

-1

假設您存儲房間的表名爲rooms,並且InchargeID字段允許空值,這已經足夠了:

select RoomID from rooms where InchargeID is null;

這裏有一個你可以測試它的SQLFiddle

1

您需要使用與表格的連接,還可以使用is null以及要在其中應用'null'條件的列名稱。你可以在下面的查詢中找到RoomDentist的所有數據,其中DentistID爲空。

select Room.*, Dentist.* from Dentist right join Room on Dentist.RoomID = Room.RoomID where Dentist.DentistID is null; 
+1

請注意,這種特殊的配方是非常罕見的; LEFT JOIN等價物在兩個等位基因中更受歡迎。 – Strawberry

相關問題