2017-12-11 10 views
0

どのIDに両方のキーワードが含まれているかを返そうとしています。例えば、私のデータは次のとおりです。両方の値に一致するが、異なる行に一致するキーワードを選択する

|fID|keyword| 
|1 |word1 | 
|1 |word2 | 
|2 |word1 | 
|3 |word2 | 

私はSQL SELECT fID FROM table WHERE keyword = 'word1' AND keyword = 'word2';

をすれば、それは彼らの両方の場合、私は望んでいますすべてがあるとき、それは彼らが同じ行になりたがっているので、私は仮定し、一致0結果で返します同じfIDで接続されています。

私はORの代わりに、それは、両方持っていけないFIDSを示している場合。

私はFID 1出力に結果を期待し、私はことにより、様々な場所やグループにbraketsいじりされていますこれで成功することはできません。

答えて

0

テストされていないが、あなたはこのような何かを試みることができる:

SELECT fID 
FROM table 
WHERE keyword = 'word1' OR keyword = 'word2' 
GROUP BY fID 
HAVING COUNT(DISTINCT keyword) = 2 
関連する問題