我有三个表:
用户: ID、姓名
类次: id、date_start、date_end
user_shifts: user_id、shift_id
我想要获取在特定日期范围内完成n次轮类的所有用户,其中n可以是任何整数(也可以是0!)。
我可以像这样获取所有用户的轮类次数:
SELECT
users.*,
COUNT(users_shifts.user_id) AS nr_shifts
FROM
users
LEFT JOIN
users_shifts ON users.id = users_shifts.user_id
GROUP BY
users.id
我不知道如何:
1)向此查询添加日期范围
2)将结果限制为特定的nr_shifts
非常感谢任何帮助。
最佳答案
SELECT
users.*,
COUNT(users_shifts.user_id) AS nr_shifts
FROM
users
LEFT JOIN
users_shifts ON users.id = users_shifts.user_id
WHERE shifts.date_end = '10/OCT/2012'
GROUP BY
users.id
Order by users.id
LIMIT 10
关于Mysql统计有3个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17446922/