用户表
id : Integer
name: String
user_review表
user_id: Integer
review: Integer
现在,用户记录有许多user_review记录。
我需要所有拥有5 review
和4 review
的用户。
SELECT * FROM user JOIN user_review ON user.id = user_review.user_id
WHERE user_review.review = 5 AND user_review.review = 4
以上代码正在对空结果进行重新处理。
我尝试了下面的代码,但是,返回错误的结果
SELECT * FROM user JOIN user_review ON user.id = user_review.user_id
WHERE user_review.review in [5, 4]
示例数据用户
id name
1 MM
2 EE
user_profile
user_id, review
1 4
1 5
2 4
2 5
3 4
4 5
想要结果
id name
1 MM // user1, having (review4) and (review5)
2 EE // user2, having (review4) and (review5)
发布于 2021-04-07 18:49:38
我想这就是你想要的。所有同时具有评论=4和评论=5的用户
select * from users
where exists(select * from user_review where user_id = user.id and review = 4)
and exists(select * from user_review where user_id = user.id and review = 5)
https://stackoverflow.com/questions/66992259
复制相似问题