You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL如何关联另一张表的多个ID查询对应名称

解决方案

因为需要把表2中3个不同的ID字段分别关联到表1获取对应名称,所以需要给表1设置不同的别名,多次关联表2即可实现。

假设你表1的名称为type_mapping,表2的名称为business_records,可以按照如下语句编写,注意替换成你实际的表名:

SELECT
  t2.ID,
  t1_1.Name AS Field1ID,
  t2.Field1Data,
  t1_2.Name AS Field2ID,
  t2.Field2Data,
  t1_3.Name AS Field3ID,
  t2.Field3Data
FROM business_records t2
LEFT JOIN type_mapping t1_1 ON t2.Field1ID = t1_1.ID
LEFT JOIN type_mapping t1_2 ON t2.Field2ID = t1_2.ID
LEFT JOIN type_mapping t1_3 ON t2.Field3ID = t1_3.ID;

说明

  • 这里使用LEFT JOIN是为了兼容表2中某ID字段为空、或者在表1无对应匹配的场景,避免整条数据丢失,如果你确认所有ID都有对应值,也可以换成INNER JOIN。
  • 语句中通过AS指定别名,保证输出的字段名和你要求的结果完全一致。

内容的提问来源于stack exchange,提问作者Layer 8

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 04:45:02