有多少电影只属于一种类型?
Posted
技术标签:
【中文标题】有多少电影只属于一种类型?【英文标题】:How many movies belong to only one genre? 【发布时间】:2021-03-12 11:12:30 【问题描述】:我想知道有多少电影只有一种类型? 这是我用过的SQL代码
WITH genre_count
AS
(
SELECT
COUNT(movie_id) AS no_of_movies_with_one_genre
FROM
genre
)
SELECT *
FROM
genre_count
HAVING
COUNT(genre) = 1;
以下是我的数据库的 ERD enter image description here
【问题讨论】:
请分享更多详细信息,例如表结构、示例输入数据、与该数据对应的预期输出以及您解决问题的尝试。你的代码到底有什么问题? 【参考方案1】:我会使用NOT EXISTS
:
SELECT COUNT(*) AS no_of_movies_with_one_genre
FROM genre g1
WHERE NOT EXISTS (SELECT 1 FROM genre g2 WHERE g2.movie_id = g1.movie_id AND g2.genre <> g1.genre)
【讨论】:
感谢您的询问 @JayThakur 很好,如果它有效并且不要忘记通过单击复选标记来接受答案。【参考方案2】:您的代码需要稍作修改,看看是否可行
WITH genre_count
AS(
SELECT movie_id, count(genre) as count_of_genre
FROM genre group by movie_id)
SELECT count(movie_id) FROM genre_count where count_of_genre = 1;
【讨论】:
以上是关于有多少电影只属于一种类型?的主要内容,如果未能解决你的问题,请参考以下文章