首页 > 解决方案 > 仅当两个用户都是 sql server 的朋友时如何获取数据

问题描述

这是我的数据库结构。用户表 -user_id -fname -lname

配置文件表 -profile_user_id -profile_id -profile_id

friend_request table -id -from_id -to_id -status 我的查询是 SELECT fname,lname,profile FROM user LEFT JOIN profile ON user.user_id = profile.profile_id WHERE(SELECT status FROM friend_request WHERE status = 'friend')

标签: sqljoinsql-in

解决方案


试试这样:

 SELECT fname,lname,profile FROM user 
 INNER JOIN profile ON user.user_id = profile.profile_id 
 INNER join user 'friend' on friend.user_id = = profile.profile_id
 INNER JOIN friend_request ON friend_request.from_id = user.user_id and  friend_request.to_id = friend.user_id 
 WHERE status = 'friend'

推荐阅读