可能是错误的标题我有一个帮助表确实在 2 个字段中保存了关系。
像 usera,userb
示例数据
a,b
1,2
1,5
1,6
2,1
2,3
如果 2 个用户在两个方向上走到一起,则匹配。在我的示例中,这将是 1 和 2,因为两者都有一行包含 userb 中的对应项
谁能告诉我如何构造一个 mysql 查询来根据一个用户在表中找到这个匹配项?
试一试,假设行是唯一的
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