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

SQL中JOIN查询结果如何去除重复的ID列

解决JOIN查询后重复ID列的问题

嘿,刚接触SQL编程遇到这种问题太正常啦~你现在用SELECT *会把关联的两个表的所有列都返回,所以才会出现重复的ID列(一个来自test表,一个来自country表)。要去掉右侧那个重复的ID,只需要明确指定你需要输出的列,而不是用通配符*。

修改后的SQL查询

SELECT test.id, test.name, test.gender, country.nation AS Country
FROM test JOIN country ON test.id = country.id;

为什么这么做?

  • test.id:保留主表的ID列即可,因为两个表的ID通过JOIN条件是完全匹配的,不需要重复显示
  • test.name、test.gender:选择test表中你需要的其他列
  • country.nation AS Country:选择country表中的国家名称,并用AS给列起一个和你示例一致的别名,让输出更直观

简化写法(可选)

如果列名在两个表中没有重复(比如name、gender只在test表存在,nation只在country表存在),也可以省略表名前缀,写法更简洁:

SELECT id, name, gender, nation AS Country
FROM test JOIN country ON test.id = country.id;

修改后的查询输出就会变成你想要的样子:

ID Name Gender Country
1 Abdur-Rahman M America
2 Don Madden M England
3 Dustin Tompkins M America
4 Nicki Harris F Germany
5 Samantha Harris F France

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 11:27:48