gpt4 book ai didi

mysql - 在 VALUE SELECT 语句中使用 GROUP BY 插入 - 错误 1111 (HY000) : Invalid use of group function

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

我试图在按 id 分组后计算不同的值,然后使用以下查询将它们插入到另一个表中:

INSERT INTO table_aggregate
(id_aggregate, aggregate_column)
(SELECT id_detail, COUNT(DISTINCT(detail_column))
FROM table_detail
GROUP BY id_detail)
ON DUPLICATE KEY UPDATE
aggregate_column = COUNT(DISTINCT(detail_column));

运行时出现错误:

ERROR 1111 (HY000): Invalid use of group function

如果我运行查询的 SELECT 语句部分,它工作正常。为什么会抛出这个错误?

最佳答案

您不能在 UPDATE 部分使用 COUNT。使用 VALUES(aggregate_column) 代替:

INSERT INTO table_aggregate
(id_aggregate, aggregate_column)
(SELECT id_detail, COUNT(DISTINCT(detail_column))
FROM table_detail
GROUP BY id_detail)
ON DUPLICATE KEY UPDATE
aggregate_column = VALUES(aggregate_column);

http://rextester.com/KTEDM89215

关于mysql - 在 VALUE SELECT 语句中使用 GROUP BY 插入 - 错误 1111 (HY000) : Invalid use of group function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41523174/

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