要按组更新MySQL/MariaDB的计数器,可以使用以下解决方法:
counter_table
的表格,包含group_id
和counter
两个字段。CREATE TABLE counter_table (
group_id INT PRIMARY KEY,
counter INT DEFAULT 0
);
INSERT INTO counter_table (group_id, counter)
SELECT DISTINCT group_id, 0
FROM your_table;
UPDATE counter_table ct
JOIN (
SELECT group_id, COUNT(*) AS count
FROM your_table
WHERE condition -- 可以根据需要添加筛选条件
GROUP BY group_id
) t ON ct.group_id = t.group_id
SET ct.counter = t.count;
在上面的代码中,your_table
是包含要计数的数据的源表格,condition
是可选的筛选条件,用于指定要更新计数器的数据范围。
以上就是按组更新MySQL/MariaDB的计数器的解决方法,通过创建计数器表格、初始化计数器和更新计数器字段的值来实现。
上一篇:按组更新列,如果至少有一个填写了
下一篇:按组构建新列并基于先前条目