要在SQL中显示表中所有重复的值及其ID,你可以使用以下查询方法。假设我们有一个名为my_table
的表,其中有两个字段:id
(主键)和value
(可能包含重复值的字段)。
你可以使用GROUP BY
和HAVING
子句来找出重复的值,然后通过连接原始表来获取这些值的ID。
SELECT t1.id, t1.value
FROM my_table t1
JOIN (
SELECT value
FROM my_table
GROUP BY value
HAVING COUNT(*) > 1
) t2 ON t1.value = t2.value
ORDER BY t1.value;
my_table
和子查询的结果,获取这些重复值的ID,并按值排序。假设my_table
包含以下数据:
| id | value | |----|-------| | 1 | A | | 2 | B | | 3 | A | | 4 | C | | 5 | B |
运行上述查询后,结果将是:
| id | value | |----|-------| | 1 | A | | 3 | A | | 2 | B | | 5 | B |
通过这种方法,你可以有效地找出表中所有重复的值及其对应的ID。
领取专属 10元无门槛券
手把手带您无忧上云