2014-01-17 66 views
2

目的:找出所有屬性,所有的評級是不是A到d如何選擇不同的ID時,ID可能有多個值

問題:如果一個屬性有多個等級不屬於A - d那麼這些仍然算在內。

代碼:

Select DISTINCT (PropertyID) 
FROM TableA 
WHERE Rating NOT BETWEEN 'A' AND 'D' 

回答

4
Select PropertyID 
FROM TableA 
group by PropertyID 
having sum(case when Rating IN ('A','B','C','D') then 1 else 0 end) = 0 

如果只想屬性的數量,然後把計數週圍

select count(*) as property_count 
from 
(
    select PropertyID from tableA ... 
) alias_name 
+0

謝謝你,這給了我N/A和未知的結果。我想得到的是沒有A,B,C或D的屬性數量。我認爲我們距離更近。即表可能有一個屬性與兩行一與A和一個與NA,所以不應該計算 – DWay

+0

更新我的回答 –

+0

謝謝Juergen它完美的作品! – DWay