Noe*_*con 7 mysql select count left-join
我有2个表(成员,duty_sched)我希望能够计算每个成员在duty_sched表中出现的时间.这是我几周后搜索的内容
SELECT
members.fname,
members.lname,
(SELECT COUNT(duty_sched.id) FROM duty_sched
WHERE 'duty_sched.mbr_id' = 'members.mbr_id') AS shifts
FROM members
ORDER BY members.lname, members.fname
Run Code Online (Sandbox Code Playgroud)
我得到的输出都是零,我希望它给我看的是:
名字转移鲍勃史密斯4简约翰逊2
我将非常感谢您提供的任何帮助.
删除单引号: WHERE duty_sched.mbr_id = members.mbr_id)
您还可以使用以下命令编写查询LEFT JOIN:
SELECT
m.fname,
m.lname,
COUNT(d.id) AS shifts
FROM members AS m
LEFT JOIN duty_sched AS d
ON d.mbr_id = m.mbr_id
GROUP BY
m.mbr_id -- the Primary Key of `members`
ORDER BY
m.lname, m.fname ;
Run Code Online (Sandbox Code Playgroud)