SQL中是否有方法檢查字段是否與另一個字段關聯,並在select語句中返回某個值。這裏是我的意思是:如何檢查與另一個字段關聯的字段並在匹配時返回一個值
如果我有一個像
Id Language
-----------------
1 Spanish
2 English
1 English
3 English
4 English
2 Spanish
2 English
表我怎樣才能返回類似
Id SpanishAssociated
------------------------------
1 Yes
2 Yes
3 No
4 No
我運行到現在的問題是,如果我這樣做
SELECT Id, SpanishAssocated = (CASE SpanishAssociated WHEN 'Spanish' THEN 'Yes'
ELSE 'NO' END)
FROM MyTable
我得到一個表,看起來像
Id SpanishAssociated
------------------------------
1 Yes
1 No
2 Yes
2 No
2 No
3 No
4 No
實際的查詢要複雜得多,但這是一般的想法。基本上我只想要一個有「是」的列,如果「西班牙語」與用戶ID相關聯(表中不唯一)(即表中至少有一行是我從「用戶」 。ID
它仍然返回重複的行。我認爲這可能是我想要進入的大方向。必須有一種方法可以使用聚合函數來解決這個問題。 – Adam
此版本的查詢只能爲每個不同的ID返回一個「SpanishAssocated」標誌。既然你提到真正的查詢是更復雜的,我想有一些連接添加記錄到結果集。但我相信一個或其他聚合函數會給你想要的輸出... – a1ex07