gpt4 book ai didi

mysql - 使用 Group By 从 Mysql 表中删除重复记录

转载 作者:行者123 更新时间:2023-11-29 05:16:26 24 4
gpt4 key购买 nike

我下面有一个表结构和数据。 enter image description here

我需要从表列表中删除重复的记录。我的困惑是,当我触发查询时

SELECT * FROM `table` GROUP BY CONCAT(`name`,department)

然后给我正确的列表(12 条记录)。

enter image description here

当我使用子查询时相同的查询:

SELECT * 
FROM `table` WHERE id IN (SELECT id FROM `table` GROUP BY CONCAT(`name`,department))

它返回所有错误的记录。

Table Structure

所以,我的问题是为什么子查询中的 group by 不起作用。

最佳答案

实际上,正如 Tim 在他的回答中提到的那样,通过 group by 子句获取第一条唯一记录并不是 sql 的标准功能,但 mysql 在 mysql5.6.16 版本之前允许它,但从 5.6.21 开始它已被更改。

只需在你的 sql fiddle 中更改 mysql 版本,然后检查你会得到你想要的。

关于mysql - 使用 Group By 从 Mysql 表中删除重复记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32175332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com