请参阅下面的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)
结果集显示在两列中,即firstname和surname。是否可以连接列,以便输出显示如下?
Ian,McFearce
Jane,McAndrew
我在这个网站上找到了一个引用:http://technet.microsoft.com/en-us/library/ms188001.aspx,其中指出:“不允许使用+运算符连接两个字符串”。因此我怀疑这是不可能的。有没有解决方法。
答案 0 :(得分: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)