我有 3 张桌子:
- 用户
- 项目
用户组
每个用户可以将多个项目发布到项目表
- 每个用户在 user_groups 中有一个记录,它定义了他所属的用户组(例如新用户、初级用户、高级用户管理员等)
我正在尝试获取满足以下条件的用户的 ID 列表:
- 属于用户组“3”
- 今天发布的项目少于 5 个
这是我的查询:
SELECT u.id, COUNT (i.id) as numPosted
FROM users u, items i
JOIN user_groups on user_groups.userId = u.id
AND user_groups.groupId = '5'
WHERE
i.userId = u.id AND
i.datePosted = CURDATE() AND
numPosted < 5
- 在 JOIN 中,它确保用户属于用户组 5
- 并在 Where 中检查项目属于 userId,以及今天发布的项目,发布的项目数量小于 5。
当我运行这个查询时,我得到这个错误:
#1630 - FUNCTION items.COUNT does not exist. Check the
'Function Name Parsing and Resolution' section in the Reference Manual
我究竟做错了什么?