数据库表ID替换为对应数值的SQL查询方案咨询
解决表关联替换ID为对应Number的SQL查询问题
没问题,我来帮你搞定这个查询需求。你需要通过两次关联表1,分别把表2中的FWIId和FWAId映射到表1对应的Number值,同时给结果字段设置符合要求的别名。
对应的SQL语句
SELECT t2.QuId AS Qu_Number, t1_fwi.Number AS FWI_Number, t1_fwa.Number AS FWA_Number FROM 表2 t2 INNER JOIN 表1 t1_fwi ON t2.FWIId = t1_fwi.Id INNER JOIN 表1 t1_fwa ON t2.FWAId = t1_fwa.Id;
关键说明
- 给表1起两个不同的别名
t1_fwi和t1_fwa,用来区分关联FWIId还是FWAId,避免同表多次关联时的字段冲突。 - 用
INNER JOIN会只保留表2中在表1能找到对应Id的记录;如果表2可能存在表1没有的Id值,想要保留这些记录的话,把INNER JOIN换成LEFT JOIN即可。 - 通过
AS关键字给结果字段重命名,完全匹配你想要的Qu_Number | FW...格式。
执行后的预期结果
运行上述查询后,你会得到如下格式的结果:
| Qu_Number | FWI_Number | FWA_Number |
|---|---|---|
| 1 | 234 | 45 |
| 3 | 45 | 98 |
内容的提问来源于stack exchange,提问作者riflex
相关产品推荐
相关产品推荐

