比如我现在有一个表A, A01(流水号) A02(编号) A03(数量) A04(条码) -------------------------------------------------------------------------------- 1 a001 3 14001 。。。
想要得到如下结果:原记录不删除,然后生成三条记录,编号不变,数量全部是1,只有条码是按规律自动增: A01(流水号) A02(编号) A03(数量) A04(条码) -------------------------------------------------------------------------------- 1 a001 1 14001 2 a001 1 14002 3 a001 1 14003 。。。 ---------------------------------------------------------------- --> 测试数据[A] if object_id('[A]') is not null drop table [A] go create table [A]([A01] int,[A02] nvarchar(8),[A03] int,[A04] int) insert [A] select 1,'a001',3,14001 --------------生成数据-------------------------- select ROW_NUMBER()OVER(ORDER BY GETDATE())[A01],A02,1 A03,A04 from [A] CROSS JOIN (SELECT number FROM master..spt_values WHERE number >= 1 AND number <= ( SELECT [A03] FROM a ) AND [type] = 'P')b ----------------结果---------------------------- /* A01 A02 A03 A04 -------------------- -------- ----------- ----------- 1 a001 1 14001 2 a001 1 14001 3 a001 1 14001 */
|