0

请看下面的SQL:

declare @TableName VarChar(100)
declare @field1 varchar(100)
declare @field2 varchar(100)
set @TableName = 'Person.Person'
set @field1  = 'LastName'
set @field2  = 'FirstName'
Declare @SQL VarChar(1000) SELECT @SQL = 'SELECT ' + @field1 + ',' + @field2 + ' FROM '
 SELECT @SQL = @SQL + @TableName 
 Exec ( @SQL) 

结果集出现在两列中,即名字和姓氏。是否可以连接列以使输出看起来像这样?

Ian,McFearce
Jane,McAndrew

我在这个网站上找到了一个引用:http ://technet.microsoft.com/en-us/library/ms188001.aspx ,其中指出:“不允许使用 + 运算符连接两个字符串”。因此我怀疑这是不可能的。有没有解决办法。

4

1 回答 1

2
declare @TableName VarChar(100)
declare @field1 varchar(100)
declare @field2 varchar(100)
set @TableName = 'dbo.Person'
set @field1  = 'LastName'
set @field2  = 'FirstName'
Declare @SQL VarChar(1000) SELECT @SQL = 'SELECT ' + @field1 + '+'',''+' + @field2 + ' FROM '
 SELECT @SQL = @SQL + @TableName 
 print @sql
 Exec ( @SQL) 
于 2013-09-29T18:33:23.230 回答