繁体   English   中英

SQL:如果没有,有没有办法计算表中值的数量?

[英]SQL: is there a way to count the number of values from a table if there are none?

所以我有两张桌子,一张是它的“电影”(电影,类型,长度)和一张“演员”(title_movie,id_actor),我必须计算每个演员播放了多少“SF”电影。

我试过这个:

SELECT id_actor, Count(type)
FROM Cast, Movies 
WHERE type='SF' and  title_movie=movie
GROUP BY id_actor;

它只显示至少有 1 部 SF 电影的演员,不显示 0 部电影的演员。 有任何想法吗?

LEFT JOIN获取所有演员。 要仅计算 SF 电影,请使用case表达式进行条件聚合

SELECT id_actor, sum(case when type = 'SF' then 1 else 0 end)
FROM Cast
LEFT JOIN Movies ON title_movie = movie
GROUP BY id_actor;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM