sql - 通过计算 id 在数据库中出现的次数来更新总数
问题描述
所以我想确保在我的 ritten 表中,当 20 作为 id 出现 4 次时 ritten_total 更改为 4 我试过这个:
UPDATE ritten, users
SET ritten_totaal = ritten_totaal + 1;
我还尝试对 ritten_totaal = 后面的 id 求和,导致错误
我有两张表,一张称为 ritten,一张称为 users,他们的链接不是与 id 而是与 rit_cc 现在我想要的结果是,当我向用户的 id 添加新的 rit 时,ritten_total 的总数上升
示例数据(不知道我是否应该这样做):
写:
id ritten_totaal rit_cc
64 1 GeJo
65 1 PeT2
用户:
id rit_cc
4 PeT2
20 GeJo
SELECT ritten_totaal, u.id
FROM ritten r
JOIN users u ON r.rit_cc = u.rit_cc
ritten_totaal id
1 20
1 20
1 21
1 18
1 20
1 20
1 4
1 4
1 19
1 19
所以这个列表中的每 20 个 id 应该增加 ritten_totaal 的值,这个列表中有 4 个 20,所以 ritten_totaal 应该更新到 4。当另一个 rit 被添加到 ritten 时,它应该增加到 5
SELECT COUNT(ritten_totaal)ritten_totaal, u.id
FROM ritten r
JOIN users u
ON r.rit_cc = u.rit_cc
WHERE u.id = 20;
ritten_totaal id
4 20
像这样的东西我需要它来更新每个 id
解决方案
我想你想要:
UPDATE users u
SET ritten_totaal = (SELECT COUNT(*)
FROM ritten r
WHERE r.rit_cc = u.rit_cc
);
推荐阅读
- r - 在每个月的新列中添加相应的最大值
- javascript - 我有来自 google sheet in Java script bit 的数据如何创建搜索功能并确保 50000 加载行
- powershell - 用于检查 AD 中用户状态的 Powershell 脚本
- zalenium - 如何在 docker-compose 文件中等待 Zalenium 服务就绪状态?
- php - 如何通过分页使过滤器成为可能
- reactjs - 如何将变量传递给反应烤面包?
- javascript - 跨多个组件使用相同的 JavaScript 库
- r - 需要叠加两个不同的热图
- visual-studio-code - 如何实现连接到需要 MFA 的服务的扩展?
- python-pptx - RGB 中的形状颜色