Php 从同一查询中的同一列中获取两个值
我想知道如何从同一行的同一列中获取两个不同的值。我的意思是,我有我的桌上朋友,如下所示Php 从同一查询中的同一列中获取两个值,php,mysql,sql,optimization,Php,Mysql,Sql,Optimization,我想知道如何从同一行的同一列中获取两个不同的值。我的意思是,我有我的桌上朋友,如下所示 id |源|目标 1 1 2 1 1 3 然后我有一个users表,其中包含以下值 id |名称 1约翰 2将 3马克 我想知道哪些用户是朋友,例如,在第一种情况下是John和Will是朋友。尝试以下sql查询 select u1.name,u2.name FROM friends as f join users as u1 on f.source=u1.id jo
id |源|目标
1 1 2
1 1 3
然后我有一个users表,其中包含以下值
id |名称
1约翰
2将
3马克
我想知道哪些用户是朋友,例如,在第一种情况下是John和Will是朋友。尝试以下sql查询
select u1.name,u2.name FROM friends as f
join users as u1 on f.source=u1.id
join users as u2 on f.Target=u2.id
您可能正在寻找的是将相同查找的双连接到单个驱动程序中:
SELECT
src.name AS srcName,
tgt.name AS targetName,
FROM
friends
INNER JOIN users AS src ON friends.source=src.id
INNER JOIN users AS tgt ON friends.target=tgt.id
-- WHERE something?
根据你的例子,约翰和威尔是朋友,约翰和马克也是。那么,是什么让第一个特别呢?这是一个基本的连接查询。在请求帮助之前,您需要显示解决此问题的尝试。请在SQL中选择DISTINCTquery@saadzer这和问题有什么关系?放一些你试过的代码如果你想要真正的帮助,我们这里不为人们做家庭作业