0

在 MySQL 中,如何找到attribute1与特定行相同的所有行attribute1?我想过做

SELECT 
    t1.id 
FROM 
    t AS t1
  , t AS t2 
WHERE 
    t2.id=123 
AND t1.a=t2.a;

但它已经运行了很多年。

4

1 回答 1

5

这应该可以返回所需的行。

SELECT t1.id 
 FROM t AS t1
 JOIN t AS t2 ON (t1.a = t2.a and t1.id <> t2.id)
WHERE t2.id=123;

你的表有多少行?“a”列是否被索引?添加索引应该可以加快连接速度。

这是关于 SQLFiddle 的示例。

于 2012-06-25T18:16:51.850 回答