mysql)如何使用groupby打印,包括count为0时

bvhaajcl  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(453)

当我有这样一张table,


我想得到一个select语句的结果,如下图所示。

但是,当count为0时,将忽略该行。

这让我很困惑。如何修改此sql语句以打印count=0行?

  1. SELECT ca.syear, COUNT(cc.joined),cc.joined
  2. FROM schedules AS cc JOIN
  3. schedule_assignment AS ca
  4. ON ca.idx = cc.assignment
  5. where student = 1 AND cc.joined = 1
  6. GROUP BY ca.syear;

对不起,我的名声不到10岁,所以我不能马上显示图片(

xzlaal3s

xzlaal3s1#

我想你只是想 LEFT JOIN :

  1. SELECT sa.syear, COUNT(cc.joined)
  2. FROM schedule_assignment sa LEFT JOIN
  3. schedules s
  4. ON ca.idx = cc.assignment AND
  5. s.student = 1 AND
  6. s..joined = 1
  7. GROUP BY sa.syear;

我没有包括 join 在结果集中总是 1 ,所以这似乎没有什么用处。您可以包括: 1 as joined ,如果你真的想要的话。

相关问题