更好的方法来选择第一个表中的所有列,并且只选择第二个表中的一列。
Posted
技术标签:
【中文标题】更好的方法来选择第一个表中的所有列,并且只选择第二个表中的一列。【英文标题】:Better way to select all columns from first table and only one column from second table on inner join 【发布时间】:2012-12-09 15:35:25 【问题描述】:图解说明
表 1 的列:
|a|b|c|d|e|
表 2 的列:
|a|x|y|z|
我只想要 a、b、c、d、e、x。我只想要表 1 中的“a”列,而不是表 2 中的“a”列。
冗长的解释
我有两个表,其中一列共享一个通用名称。如果我使用 Select * 并使用内部联接,我会返回所有列,包括两个具有相同名称的列。
我想从第一个表中选择所有内容,从第二个表中只选择一列。现在我正在指定我需要的每一列,这是一个拖累。有没有更简单的方法可以从第一个表中获取所有内容,而只从第二个表中获取我想要的一列?
提前致谢。
【问题讨论】:
【参考方案1】:你需要指定第二个表的列名,如果它与另一个表具有相同的columnName,你需要在它上面提供一个ALIAS
,
SELECT tb1.*, tb2.x
FROM tableA tb1
INNER JOIN tableB tb2
ON tb1.a = tb2.a
【讨论】:
以上是关于更好的方法来选择第一个表中的所有列,并且只选择第二个表中的一列。的主要内容,如果未能解决你的问题,请参考以下文章
添加列通过从sql Server中的另一个表中选择所有项目来选择表