Mysql选择具有相同值的行

时间:2014-05-31 10:05:29

标签: mysql

我在mysql数据库中有下表:

+-------+-----------+------------+
| id    | object_nr | object_nr2 |
+-------+-----------+------------+
| 24567 | 04        | 11         | 
| 24568 | 04        | 11         | 
| 24569 | 04        | 11         | 
| 24570 | 04        | 41         | 
+-------+-----------+------------+

列object_nr和object_nr2在id为24567,245678和24569的行中具有相同的值。

我想只选择这三行。

ID为24570的行不会包含在此选择中。

如何编写可以执行此操作的select语句?

2 个答案:

答案 0 :(得分:1)

select * from yourtable where object_nr = object_nr2

答案 1 :(得分:1)

试试这个:

SELECT T1.*
FROM TableName T1
WHERE (SELECT COUNT(*)
       FROM TableName T2
       WHERE T1.object_nr=T2.object_nr
       AND T1.object_nr2=T2.object_nr2)>1

结果:

ID      OBJECT_NR   OBJECT_NR2
24567   4           11
24568   4           11
24569   4           11

请参阅SQL Fiddle中的结果。