首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

显示表中所有重复的值及其ID (SQL)

要在SQL中显示表中所有重复的值及其ID,你可以使用以下查询方法。假设我们有一个名为my_table的表,其中有两个字段:id(主键)和value(可能包含重复值的字段)。

查询方法

你可以使用GROUP BYHAVING子句来找出重复的值,然后通过连接原始表来获取这些值的ID。

代码语言:txt
复制
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;

解释

  1. 子查询
  2. 子查询
  3. 这个子查询会返回所有出现次数大于1的值。
  4. 主查询
  5. 主查询
  6. 主查询通过连接原始表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。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券