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

SQL查询问题:关联两表显示不同ID对应的出发/目的地城镇名称

问题解决:关联两次TownCity表获取出发/目的地名称

问题根源

你当前的SQL只做了一次TownCity表关联,并且要求同一条TownCity记录的town_Id同时等于tik_source和tik_destination——这只有当两个ID完全相同时才会命中,ID不同时自然查不到结果。

修正后的查询语句

需要分别关联TownCity表两次,用别名区分出发地和目的地的关联逻辑:

SELECT 
    TicketDetails.tik_source, 
    TicketDetails.tik_destination, 
    tc_src.town_name AS source, 
    tc_dest.town_name AS destination,
    TicketDetails.Cust_Id
FROM TicketDetails
INNER JOIN TownCity tc_src ON TicketDetails.tik_source = tc_src.town_Id
INNER JOIN TownCity tc_dest ON TicketDetails.tik_destination = tc_dest.town_Id
WHERE TicketDetails.Cust_Id = 1

关键说明

  • 给第一次关联的TownCity起别名tc_src,专门匹配出发地ID,提取出发城镇名称;
  • 第二次关联TownCity起别名tc_dest,匹配目的地ID,提取目标城镇名称;
  • 这样不管出发地和目的地ID是否一致,都能正确拉取对应的城镇名称。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 07:14:52