gpt4 book ai didi

mysql - SQL:从另一个表中插入具有匹配对象名称的列

转载 作者:行者123 更新时间:2023-11-28 23:41:00 24 4
gpt4 key购买 nike

我有两个表:

表一:
虚拟机名称 |主机名
虚拟机1 |服务器1
虚拟机2 |服务器1
虚拟机3 |服务器 2

表 2:object_id |对象名称
1 |服务器1
2 |虚拟机1
3 | vm3
4 |服务器2
5 | vm2

我想在表 1 中添加两列(或创建新的整个表)以显示 vm_name、object_id、host_name、object_id。我还想将 object_id 列名称更改为 vm_id 和 host_id。

输出表如下所示:
虚拟机名称 |虚拟机 ID |主机名 | host_id
虚拟机1 | 2 |服务器 1 | 1
虚拟机2 | 5 |服务器 1 | 1
虚拟机3 | 3 |服务器 2 | 4

关于如何着手做这件事有什么想法吗?到目前为止,我已经使用 join 来匹配:vm_name | object_id

SELECT table1.vm_name, table2.object_id
FROM table1
INNER JOIN table2
ON table1.vm_name = table2.object_name
ORDER BY table1.vm_name;

但是如何同时添加两列呢?

最佳答案

再次将它加入到 table2 中:

select t1.vm_name, 
t2.object_id as vm_id,
t1.host_name,
t3.object_id as host_id
from table1 t1
join table2 t2 on t1.vm_name = t2.object_name
join table2 t3 on t1.host_name = t3.object_name
order by t1.vm_name

关于mysql - SQL:从另一个表中插入具有匹配对象名称的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34403940/

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