gpt4 book ai didi

mysql - 从具有多个表的 SQL 数据库中获取用户 ID

转载 作者:搜寻专家 更新时间:2023-10-30 22:23:57 25 4
gpt4 key购买 nike

我正在尝试为观看了一定数量电影的用户获取电子邮件地址。例如,如果用户在我运行对电影 3 的查询时观看了电影 1、2 和 3,则该用户应该出现在我的表中。但是当用户符合所有条件时,例如当我运行查询用户观看电影 1、2、3 和 4 时,用户不应该出现。

这是两个表:

enter image description here

enter image description here

SELECT Email 
From Users
Inner Join Movies On Users.ID = Movies.ID
Where(Movies = "Movie 1" AND Movies = "Movie 2")

但是有些用户 1 和用户 2 是如何显示的,但它只需要列表中的用户 1。

最佳答案

如果您想要看过电影 'Movie1''Movie2' 的用户的电子邮件,您可以这样做:

select u.email
from users u inner join movies m
on m.id = u.id
where m.movies in ('Movie1', 'Movie2')
group by u.email
having count(*) = 2

如果出现用户不止一次看过一部电影的情况,则更改:

having count(*) = 2

与:

having count(distinct m.movies) = 2 

关于mysql - 从具有多个表的 SQL 数据库中获取用户 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55749007/

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