gpt4 book ai didi

php - SQL查询将两列与另一表中的一列进行比较(并获取两个值)

转载 作者:行者123 更新时间:2023-11-29 10:53:44 25 4
gpt4 key购买 nike

是否可以根据table1中两列的ID值,在table2中获得它们的等值?

我的table1看起来像这样:

id | origin | destiny
-- | ------ | -------
1 | 2 | 3
2 | 4 | 5

table2,如下所示:

id | name
-- | ----
1 | bla
2 | asd
3 | dfg
4 | qwe
5 | tle

我想要得到这样的东西:

id | origin | destiny | nameOrigin | nameDestiny
-- | ------ | ------- | ---------- | -----------
1 | 2 | 3 | asd | dfg
2 | 4 | 5 | qwe | tle

我尝试进行两个查询:

SELECT
t1.origin,
t1.destiny,
t2.name
FROM
table1 t1
INNER JOIN table2 t2 ON t1.origin = t2.id

和:

SELECT
t1.origin,
t1.destiny,
t2.name as destinyName
FROM
table1 t1
INNER JOIN table2 t2 ON t1.destiny = t2.id

但是,如果我从一个表中删除一个值,另一个表会继续索引该行,因此存在未定义的偏移问题。

最佳答案

您可以加入第二个表两次:

SELECT      t1.id,
t1.origin,
t1.destiny,
o.name as nameOrigin,
d.name as nameDestiny
FROM table1 t1
INNER JOIN table2 o ON t1.origin = o.id
INNER JOIN table2 d ON t1.destiny = d.id

注意:“命运”“目的地”不同。

关于php - SQL查询将两列与另一表中的一列进行比较(并获取两个值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43322723/

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