我有两个具有以下架构的表
tableA
id (unique)
count
tableB
id (not unique)
count
我想对具有相同 id 的 tableB 进行求和,并发现结果总和不等于 tableA 中相同 id 的计数,并用 sum 的结果更新 tableA
例如
表A
row1
id1
count=10
row2
id2
count=5
row3
id3
count=1
表B 第1行 编号1 计数=5 第2行 编号1 计数=5 第3行 编号2 计数=1 第4行 编号2 计数=3
在上面的例子中,只有
id2
的计数与tableB的总和不同,所以我想将tableA中的id2
更新为计数4
这是我用来查找有差异的 id 和 count 的脚本
select g.id, c.count_sum, g.count
FROM
tableA g,
(SELECT
id,
SUM(count) count_sum
FROM tableA
GROUP BY id) c
where g.id = c.id and
c.count_sum <> g.count
and g.extra_condition = 'dummy'
如何将tableB sum的结果插入tableA count
更新 tableA 设置 a.count=s.count_sum tableA 的内部联接(您的分组在此处选择)s on a.id=s.id.