2017-12-13 8 views
2

私は恥ずかしいですが、私はこれを質問しなければなりませんSQL質問。私は実際にSQLITEAndroidに使っています。単一のテーブルでの単純なSQLクエリ

2つの列を持つテーブルが1つしかないとします。

USER1 USER2 
111 555 
111 300 
445 111 
555 111 
325 111 
111 233 
300 111 

私は、次のような結果を取得したいのですが:

USER1 USER2 
111 300 
111 555 

私はINNER JOININTERSECTを試してみましたが、私はそれを動作させることができませんでした。

ありがとうございました!!!

+1

あなたの質問にあなたの質問を追加してください。 –

+1

'私は内部のJOINとINTERSECT'ショーコードを試しました。 –

+3

2行を取得するロジックは何かを説明し、他のロジックは取得しないようにしてください。 –

答えて

3

切り替えられたuser1/user2もテーブルに存在する行が必要なように見えます。また、user1 < user2。自己参加をしてください:

select t1.user1, t1.user2 
from table t1 
join table t2 on t1.user1 = t2.user2 and t1.user2 = t2.user1 
where t1.user1 <= t1.user2 
+0

その場合、111,233でも表示されます。 –

+1

@AswaniMadhavan、それは?私は233、111行を見つけることができません... – jarlh

+0

申し訳ありません..あなたは正しいです –