我想在存储过程中选择一些数据,并且我想将所有选定的数据插入到同一存储过程中的另一个表中:
SELECT * FROM @TempTable
然后插入到另一个表中:
SELECT @v_Maxno = isnull(max([A_TEST].ROW_NUM) + 1, 1)
FROM [A_TEST]
INSERT INTO [dbo].[A_TEST] (ROW_NUM,A, B, C)
VALUES (@v_Maxno,TempTable.CL_A, TempTable.CL_B, TempTable.CL_C)
我必须手动计算行号,如果有任何类似循环的话,那么我将设法实现这一点。
找不到最佳方法..........使用SQL Server
答案 0 :(得分:1)
而不是使用values关键字,直接使用select。
像这样insert into Table1(RowNum,Col1,Col2)
select ROW_NUMBER() OVER(ORDER BY Cola),Cola,colb from table2