gpt4 book ai didi

php - 重命名内部连接中的列名

转载 作者:行者123 更新时间:2023-11-29 04:23:14 26 4
gpt4 key购买 nike

我有 2 个这样的表:

Table 'c'

| id | item_1 | item_2 |
-------------------------------
| 1 | 1 | 2 |
-------------------------------

Table 'i'

| id | name |
-------------------
| 1 | item |
-------------------
| 2 | item_2 |
-------------------

不,我需要从表 c 中获取包含项目名称的结果。所以我为此构建了一个内部 JOIN。

SELECT c.*, i.name FROM c 

INNER JOIN i ON
c.item_1 = i.id
OR
c.item_2 = i.id

这“很好”。但我得到了这样的返回:

   |  id  |  item_1  |   item_2  |  name   |
----------------------------------------
| 1 | 1 | 2 | item_2 |
----------------------------------------

问题很明显 - 我需要为两个 item_id 取回 2 个名称,但只取回一个。那么是否可以为列设置一个新名称?像这样:

SELECT c.*, i.name FROM c 

INNER JOIN i ON
c.item_1 = i.id SET name AS name_1
INNER JOIN i ON
c.item_2 = i.id SET name AS name_2

所以结果会是这样的:

   |  id  |  item_1  |   item_2  |  name_1   |  name_2 |
----------------------------------------------------
| 1 | 1 | 2 | item_1 | item_2 |
----------------------------------------------------

最佳答案

类似的东西?

SELECT c.*, 
i1.name as name_1,
i2.name as name_2
FROM c
INNER JOIN I as i1
ON c.item_1 = i1.id
INNER JOIN I as i2
ON c.item_2 = i2.id

关于php - 重命名内部连接中的列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17569871/

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