我有一個人與一些電子代碼之間的多對多關係。帶有代碼的表格具有代碼本身以及代碼的文本說明。一個典型的結果從查詢中設置可能會(也有包含「破」,所以我覺得這是更好的搜索文字說明,而不是添加了一堆OR的每一個代碼中的許多代碼。)使用LIKE結合過濾結果的方法
id# text of code
1234 broken laptop
1234 broken mouse
目前獲得這樣的結果集的最好方法是使用LIKE%broken%
過濾器。在不改變文字描述的情況下,有什麼辦法可以只返回broken
的代碼實例嗎?所以在上面的例子中,查詢將只返回1234和破碎的鼠標或破碎的筆記本電腦。在這種情況下,返回的並不重要,我要查找的是在該人員的任何代碼的文本描述中出現「破碎」。
我目前的解決方案是創建一個將返回
`id# text of code
1234 broken laptop
1234 broken mouse`
,並使用SELECT DISTINCT ID#
而查詢視圖來獲取各只有一個實例的視圖。
編輯ACTUALLY QUERY
SELECT tblVisits.kha_id, tblICD.descrip, min(tblICD.Descrip) as expr1 FROM tblVisits inner join icd_jxn on tblVisits.kha_id = icd_jxn.kha)id inner join tblICD.icd_fk=tblICD.ICD_ID group by tblVisits.kha_id, tblicd.descrip having (tblICD.descrip like n'%broken%')
只是刪除了'tblICD.descrip'並添加GROUP BY,使它象我的回答工作。 – GavinCattell 2012-04-05 18:28:48