0
可能是错误的标题 我有一个辅助表在2个字段中保持关系。mysql查找条目匹配2个方向上的2个字段
像用户A,用户B
实施例数据
a,b
1,2
1,5
1,6
2,1
2,3
如果用户在两个方向走到一起的匹配将是。 在我的例子,这将是1和2 因为两者有一排保存在用户B的对应
谁能告诉我怎样可以构建一个MySQL查询找到这个表格中的匹配基于一个用户?
可能是错误的标题 我有一个辅助表在2个字段中保持关系。mysql查找条目匹配2个方向上的2个字段
像用户A,用户B
实施例数据
a,b
1,2
1,5
1,6
2,1
2,3
如果用户在两个方向走到一起的匹配将是。 在我的例子,这将是1和2 因为两者有一排保存在用户B的对应
谁能告诉我怎样可以构建一个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
行不是唯一的..有什么办法让一个综合作用的结果? – Nullx8 2013-02-22 16:24:55
@Nullx8你需要使用第二个查询。 – 2013-02-22 16:26:29
我需要这个作为where子句中的子查询,以获得用户的相关数据......但我不知道如何用x,y结果来做到这一点 – Nullx8 2013-02-22 16:58:24