gpt4 book ai didi

mysql - 如何在单个 mysql 命令中删除此选择查询的结果?

转载 作者:行者123 更新时间:2023-11-29 19:01:50 25 4
gpt4 key购买 nike

表名称 radacct radacctid 是 pk accountuniqueid 是订阅者在连接时生成的几乎唯一的字符串。

这是输出重复条目的 mysql 查询,我想在同一命令中删除结果以自动执行此过程。

select *
from radacct
group by acctuniqueid
HAVING
(radacct.acctuniqueid > 1)

最佳答案

我假设您的意思是 HAVING 子句中的 HAVING COUNT(acctuniqueid) > 1 。如果您确实想删除所有重复项(即不保留任何重复项):

DELETE FROM
radacct
WHERE
`acctuniqueid` IN (
SELECT `acctuniqueid` FROM (
SELECT `acctuniqueid`
FROM radacct
GROUP BY `acctuniqueid`
HAVING COUNT(`acctuniqueid`) > 1
) x
)
;

中间的SELECT对于MySQL在直接子选择中忽略相同的表引用是必要的。

建议删除前先进行全表备份。

关于mysql - 如何在单个 mysql 命令中删除此选择查询的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43816152/

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