mysql - 左连接让我难过

标签 mysql left-join

我有 2 个表,person 和 movie

人表有ID和性别,电影表有ID、movie_type和movie_attended。 genderID 和 movie_attended 可以为空。

我想创建一个将返回 3 列的查询:性别、movie_attended(但它必须是一部浪漫电影)以及具有该性别和 movie_attended 的人数统计。

现在我有

select person.gender, movie.movie_attended, count(person.gender)
from person left join movie
on person.ID = movie.ID
where movie.movie_type = "romance"
order by person.gender DESC

不幸的是,这只给了我一行信息。如果我删除 count(person.gender) 我得到太多行。假设只有 3 部浪漫电影可供选择。我希望我的第一行是男性 - 笔记本 - 12。第二行:男性 - 卡萨布兰卡 - 8。第三行:男性 - 罗密欧与朱丽叶 - 2。第四行:男性 - 空 - 2

然后从女性开始

谢谢

最佳答案

select gender, count(person.gender), movie.movie_attended
from person left join movie
on person.movie_id = movie.movie_id # or whatever it is called.
where movie.movie_type = "romance"
group by person.gender

关于mysql - 左连接让我难过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12926870/

相关文章:

mysql - 根据记录数和条件查找第一个可用选项的函数

Mysql 查询不按预期工作

mysql - SQL 左连接。花费太长时间。

mysql - 2个不同查询结果的总和

MySQL 左连接子选择

php - MySql Select查询(JOIN上限制选择)

php - 3个表,左连接,以防ONE表中缺少DATA

java - 如何在 springboot API 中自定义来自@query 的响应

php - jQuery 函数动态加载更多数据

mysql - 导入包含多条记录的 CSV - 更新多行