跟你提個方法,用臨時表來處理這中問題,效果還是蠻好的

解决方案 »

  1.   

    1.mssql存储过程中我要向一个表中插入数据,但是这个数据又是从另外一个表中选取的,中间的转换不知道怎么处理!答:向一个表中插入数据,这个表是已经存在的表吗?还有请问插入的字段都来自于另外的一个表吗?如果不存在,那么用select * into NewTableName from OldTableName,如果已经存在,就用insert into NewTableName Select * from OldTableName!请问你说“中间的转换不知道怎么处理”,首先你告诉我们你要怎么处理呢?2.还有在存储过程中如何把选取的记录集按照记录的个数一一赋个变量?
    答:你说的赋个变量是怎么赋?猜测,计算纪录个数赋给变量,那么就是
    declare @sum as int
    select @sum = count(*) from TableName
    如果是传入选取的栏位名称,就类似:
    declare @city as nvarchar(10)
    declare @condition as nvarchar(10)
    set @city = 'citynam'
    set @condition = 'Guangdong'
    declare @sql nvarchar(4000)
    set @sql = N'select ' + @city + ' from #city where ziduan1 =@condition '
    exec sp_executesql @sql,N'@condition nvarchar(10)',@condition
    不知道有没有说清楚,呵呵