0

おそらく間違ったタイトルのヘルパー テーブルが 2 つのフィールドに関係を保持しています。

ユーザーラ、ユーザーブのように

サンプルデータ

a,b
1,2
1,5
1,6
2,1
2,3

2 人のユーザーが両方向で一緒になった場合に一致します。私の例では、これは 1 と 2 になります

1人のユーザーに基づいてテーブルでこの一致を見つけるためにmysqlクエリを作成する方法を誰か教えてもらえますか?

4

1 に答える 1

0

行が一意であると仮定して、これを試してください

SELECT least(Col1, Col2) as x, 
       greatest(Col1, Col2) as y
FROM   Table1 
GROUP  BY x, y
HAVING COUNT(*) > 1

ただし、行が一意でない場合は、DISTINCTキーワードが必要です。

SELECT least(Col1, Col2) as x, 
       greatest(Col1, Col2) as y
FROM   Table1 
GROUP  BY x, y
HAVING COUNT(DISTINCT Col1, Col2) > 1
于 2013-02-22T14:38:35.720 に答える