上面是我的模式的屏幕截圖。
訪問表有一個個人ID號列表,ICD是與某個人有關的代碼列表。您可以從交接表中看到,Visits和ICDTable之間存在多對多關係。我試圖做一個查詢,允許一個人在ICDTable中鍵入兩條記錄,並且只有當一個人擁有這兩個記錄時才返回訪問ID#。我試圖從之前的一個查詢中修改這個,但我無法弄清楚發生了什麼。查詢本身並不「失敗」,因爲它允許我搜索一些內容,但顯然是錯誤的。我錯過了什麼?格拉西亞斯。
SELECT Visits.ID, Inf.desc, Sore.desc
FROM tblKentuckyCounties
INNER JOIN
(
ICDTable AS Inf
INNER JOIN
(
(
(
Visits
INNER JOIN ICDTable AS InfVisits
ON Visits.ID=InfVisits.VisitsID
)
INNER JOIN ICDTable AS SoreVisits
ON Visits.ID=SoreVisits.ID
)
INNER JOIN ICDTable AS Sore
ON SoreVisits.ICD_IDFK=Sore.ID
) ON Inf.ID=Visits.ICD_IDFK
)
ON tblKentuckyCounties.ID=Visits.County
WHERE Inf.desc=[enter first term]
AND Sore.desc=[enter second term]
感謝您的編輯。
好的,所以我找到了我需要做的事情。下面這段文字是有興趣的人如何做這樣的事情
SELECT DISTINCT Visits.KHA_ID, Visits.totalCharges
FROM (Visits INNER JOIN (ICDTable INNER JOIN ICDVisitsJxn ON ICDTable.ICD9ID = ICDVisitsJxn.ICD_IDFK) ON Visits.ID = ICDVisitsJxn.VisitsIDFK) INNER JOIN (ICDTable AS ICDTable_1 INNER JOIN ICDVisitsJxn AS ICDVisitsJxn_1 ON ICDTable_1.ICD9ID = ICDVisitsJxn_1.ICD_IDFK) ON Visits.ID = ICDVisitsJxn_1.VisitsIDFK
WHERE (((ICDTable.Description) Like [enter term]) AND ((ICDTable_1.Description) Like [enter another term]));
別名被選擇爲清楚起見用最後的查詢。他們真的可以稱爲任何東西。 – wootscootinboogie 2012-03-01 14:34:01
更正,我想它確實失敗。它不會接近我想要的。但我猜,至少可以讓我運行錯誤的查詢。 – wootscootinboogie 2012-03-01 14:37:24