set @TempFields = LTRIM(RTRIM(@TempFields))
if left(@TempFields,1)=’,’ –去除最左边的逗号
set @TempFields = substring(@TempFields, 2, len(@TempFields))
if right(@TempFields,1)=’,’ –去除最右边的逗号
set @TempFields = substring(@TempFields, 1, len(@TempFields)-1)
set @SQL2 = @SQL2 + ‘ select identity(int,1,1) as PK,’ + @TempFields + ‘ into #tb from ‘ + @Tables + @Where + ‘ order by ‘ + @OrderBy
–****************************************************************************
–********去除字段的表名前缀,当有字段有别名时,只保留字段别名*********
–****************************************************************************
declare @TotalFields varchar(500)
declare @tmp varchar(50)
declare @i int
declare @j int
declare @iLeft int –左括号的个数
declare @iRight int –右括号的个数
set @i = 0
set @j = 0
set @iLeft = 0
set @iRight = 0
set @tmp = ”
set @TotalFields = ”
while (len(@Fields)>0)
begin
set @i = charindex(‘,’, @Fields)
–去除字段的表名前缀
if (@i=0)
begin
–找不到逗号分割,即表示只剩下最后一个字段
set @tmp = @Fields
end
else
begin
set @tmp = substring(@Fields, 1, @i)










