刪除不需要的行我做了SELECT與CASE語句,這以下內容:SQL Server從CASE語句
SELECT DISTINCT
n.NiveauId, n.Description,
CASE WHEN n.NiveauId NOT IN (SELECT ccs.idNiveau WHERE ccs.centreCout = 60001) THEN 0 ELSE 1 END AS attribue
FROM pa.dbo.Niveau n
JOIN BDC.dbo.CentreCoutSecteur ccs ON n.NiveauId = ccs.idNiveau
解說: 萬一「NiveauId」不存在於其他表,價值「attribue」爲0。否則,如果是,則該值是1。
這工作,而是一個包含1每行也顯示在同一行有0
例:
如何更改SELECT查詢以刪除包含0的不需要的重複行?
提前致謝!
請問您的情況選擇(單獨運行時),包含給定NiveauID多行? – DiscipleMichael
另外,如果你不確定,DISTINCT子句將評估select語句中的所有字段,也就是說,如果你有兩行具有相同的NiveauID和Description,但是不同的Attribue值......兩行都是不同的,包含在結果中 – DiscipleMichael
我已經選擇了「attribue」這個案例,沒有NiveauId和Description,結果是兩行,分別是1和0.這就是你的意思嗎? – Yannick