sql - 如何从左连接中获取两列,其中一个表有一个连接列,但另一个表有 2 个不同的列?
问题描述
我有 2 个具有以下架构的表:
Table1
key_sn int
start_id int
end_id int
Table 2
id int
id_name string
我想得到id_name
对应的 tostart_id
和end_id
in table 1
from table 2
。
我正在使用以下查询加入:
select
t1.key_sn
t2.id_name as start_name
t3.id_name as end_name
from table1 t1
left join table2 t2 on t1.start_id=t2.id
left join table2 t3 on t1.end_id=t3.id
有没有办法在不做left join
两次的情况下获得相同的细节?
解决方案
推荐阅读
- reactjs - 如何在带有 RefForwardingComponent 的反应函数组件中使用泛型?
- go - Golang H2C Server 不写全文。Chrome 说:“服务器重置流”。仅通过 http2 连接发生
- php - Laravel 7 下拉列表公共函数创建
- python - NameError:当我尝试捕获执行时,未定义名称“variable_name”
- c - 将文件从客户端发送到服务器 C 不工作 file_desc 未知原因返回 -1
- c# - 如果循环中的索引超出范围,则在 C# 中返回空数组
- android - 无法解析配置“:app debug Runtime Classpath”的所有依赖项
- javascript - 每次使用 React 组件时,是否都会重新评估在 React 组件中定义的辅助函数?
- logging - 限制 JSONLayout 中的堆栈跟踪行数
- angular - 在同一个项目中部署服务器端渲染和客户端渲染 angular 10 应用程序