gpt4 book ai didi

mysql - 选择与外国 ID 匹配的两行?

转载 作者:行者123 更新时间:2023-11-29 04:49:37 25 4
gpt4 key购买 nike

我正在尝试获取属于两种类型(类别)的所有电影名称,

即模式

movie_id  genre
4 Action
4 Comedy

SQL:

SELECT movies.movie_name
FROM movies
INNER JOIN tags
ON movies.movie_id = tags.movie_id
WHERE tags.genre = 'Comedy'
AND tags.genre = 'Action'

这应该让我返回 movie_id 4 的 movie_name。

这使我返回零结果,当我知道使用我的测试数据应该是三个结果时,我是不是做错了查询。

最佳答案

SELECT movies.movie_name
FROM movies
INNER JOIN tags
ON movies.movie_id = tags.movie_id
WHERE tags.genre IN ('Comedy','Action')
GROUP BY movies.movie_name
HAVING COUNT(*) = 2

如果没有为每部电影的流派指定唯一约束,那么您需要添加 DISTINCT

SELECT movies.movie_name
FROM movies
INNER JOIN tags
ON movies.movie_id = tags.movie_id
WHERE tags.genre IN ('Comedy','Action')
GROUP BY movies.movie_name
HAVING COUNT(DISTINCT tags.genre) = 2

关于mysql - 选择与外国 ID 匹配的两行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13432142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com