SQL查询无法正确显示

时间:2017-03-29 22:33:57

标签: sql-server

我有两个表和一个查询,我想输出不同ID的文本。

表A的Col1和Col2是表B的PK的外键

Table A 
PK  Col1  Col2
1    2      3

Table B
PK  Col1
 2   test
 3   test1

查询:

    select 'This is a ' + B.Col1 + 'and this is' + B.Col1 from TableA r inner join TableB k on r.Col1 = k.PK 

r.Col2 = t.PK'

上的内连接TableB t

我想要的结果

This is a test and this is test1

结果我得到了

This is a test and this is test

1 个答案:

答案 0 :(得分:1)

这应该有效

select 
'This is a ' + k1.Col1 +
'and this is' + k2.Col1
from TableA r 
inner join TableB k1 on r.Col1 = k1.PK 
inner join TableB k2 on r.Col2 = k2.PK 

顺便说一下,当你使用+来连接列时会意识到。如果列中的一个为Null,则结果字符串将为null 如果你想避免使用CONCAT,请使用。