Mysql 从多个表中选择值-SQL
嗨,我有以下数据库结构: 表Mysql 从多个表中选择值-SQL,mysql,sql,Mysql,Sql,嗨,我有以下数据库结构: 表用户包含:电子邮件、姓名 表connections包含:followeremail、followeredemail、isfolloweredacept 表位置包含:位置,电子邮件 我想获得我朋友的姓名和位置,当:我有我的电子邮件的值,它是followeremail,我有我朋友的电子邮件的值,它是followeredemail 只有当我在conctions表中有一行包含我的电子邮件followEmail和我朋友的电子邮件followDeMail且isfollowDace
用户
包含:电子邮件、姓名
表connections
包含:followeremail、followeredemail、isfolloweredacept
表位置
包含:位置,电子邮件
我想获得我朋友的姓名
和位置
,当:我有我的电子邮件的值,它是followeremail
,我有我朋友的电子邮件的值,它是followeredemail
只有当我在conctions
表中有一行包含我的电子邮件followEmail
和我朋友的电子邮件followDeMail
且isfollowDacept
为true时,它才应该检索数据
我的问题是如何编写该查询
我想不出来。谢谢。试试这个:
select u.name, l.location
from connections C
join users U on U.followedemail = C.email
join location l on l.email = C.email
where C.followingemail = (your email)
and U.followedemail = (your friend's email)
and U.isfollowedaccept = true
您需要加入
用户
和位置
两次,以获取数据,如下所示
select
u1.name as following_name,
u2.name as followed_name,
l1.location as following_location,
l2.location as followed_location
from connections c
join users u1 on u1.email = c.followingemail
join users u2 on u2.email = c.followedemail
join locations l1 on l1.email = c.followingemail
join locations l2 on l2.email = c.followedemail
where
c.followingemail = '{your email}'
and c.followedemail = '{friends email}'
and c. isfollowedaccept = 'true'
@madalinivascu你写的很抱歉你需要加入这些tables@madalinivascu还有其他方法吗?我认为在发布此查询之前,您应该尝试一些查询并发布它。