gpt4 book ai didi

mysql - 使用其他行的 SUM() 和 COUNT() 更新一行

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

想象一下两个表:

t1: id, sum, cnt 
t2: id, id_t1, value

我想做这样的查询;

UPDATE t1, t2 
SET t1.sum = SUM(t2.value),
t1.cnt = COUNT(*)
WHERE t1.id = t2.id_t1;

查询应使用 t2 的值之和更新 t1.sum,其中 t1.id=t2.id_t1t1.count 那里的行数 t1.id=t2.id_t1

但失败并返回错误:ER_INVALID_GROUP_FUNC_USE: Invalid use of group function

我应该怎么做?

最佳答案

UPDATE  t1 a
LEFT JOIN
(
SELECT id_t1,
SUM(value) totalSum,
COUNT(*) totalCount
FROM t2
GROUP BY id_t1
) b ON a.ID = b.id_t1
SET a.sum = COALESCE(b.totalSum, 0) ,
a.cnt = COALESCE(b.totalCount, 0)

关于mysql - 使用其他行的 SUM() 和 COUNT() 更新一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14658953/

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