两个列不相同的表之间的SQL联接列

两个列不相同的表之间的SQL联接列,sql,sql-server,Sql,Sql Server,因此,我不知道这是因为我不知道足够的术语,还是因为我没有做到,但在众多的答案中,我找不到一个能解决我问题的答案。我有两个表,我们称它们为表A和表B。表A有一个外键,指向B中的一行。我想在A的col1、col2和col3中选择条目,并从B中添加到选择col4和col5,其中A中的行有一个id列,指向B中的行。例如。 我认为使用内部连接应该很容易,但我不能编写任何导致语法错误的代码。我对Sql相当陌生,但这似乎并不太难。任何帮助都会得到感激 注意:我正在使用Microsoft SQL Server

因此,我不知道这是因为我不知道足够的术语,还是因为我没有做到,但在众多的答案中,我找不到一个能解决我问题的答案。我有两个表,我们称它们为表A和表B。表A有一个外键,指向B中的一行。我想在A的col1、col2和col3中选择条目,并从B中添加到选择col4和col5,其中A中的行有一个id列,指向B中的行。例如。

我认为使用内部连接应该很容易,但我不能编写任何导致语法错误的代码。我对Sql相当陌生,但这似乎并不太难。任何帮助都会得到感激

注意:我正在使用Microsoft SQL Server,有人告诉我这一点很重要。

使用内部联接

select a.col1, a.col2, a.col3, b.col1, b.col2
from tableA as a
inner join tableB as b on a.b_id = b.id 
使用内部联接

select a.col1, a.col2, a.col3, b.col1, b.col2
from tableA as a
inner join tableB as b on a.b_id = b.id 

是的,这是一个基本的内部连接。您尝试的错误代码是什么?您应该阅读本文。如果您想从任何关系数据库检索数据,那么理解连接不仅有助于解决这种情况,而且至关重要。连接是非常重要的基础。除非你真的理解了,否则你就不能继续用你的知识。事实证明,如果有人关心的话,我正确地使用了JOIN,但我没有意识到您可以同时从多个表中进行选择,所以我尝试将它连接到另一个select语句。是的,这是一个基本的内部连接。您尝试的错误代码是什么?您应该阅读本文。如果您想从任何关系数据库检索数据,那么理解连接不仅有助于解决这种情况,而且至关重要。连接是非常重要的基础。除非你真的理解了,否则你就不能继续用你的知识。事实证明,如果有人关心的话,我正确地使用了JOIN,但我没有意识到您可以同时从多个表中进行选择,所以我尝试将它连接到另一个select语句。我认为a.b_id是根据模式判断的链接,不是吗?@scsimon是对的,它应该在a.b_id=b.id上,因为从a指向b的键是b_id,不是id。在你更改它之后,我会接受你的答案。我认为a.b_id将是根据模式判断的链接,不是吗?@scsimon是对的,它应该在a.b_id=b.id上,因为从a指向b的键是b_id,而不是id。在你更改它之后,我会接受你的答案。