我將數據從一個表插入另一個表。我只取最後一個值從第一表作爲ID,需要從那裏遞增,所以我採取了MAX(ID) + 1
,做增量,但我得到相同的值如何根據另一個表中的最後一個值做自動增量?
declare @t table (ID INT,VID INT,Sname Varchar(10),Rname Varchar(10))
INSERT INTO @t (ID,VID,Sname,Rname)VALUES
(4601,1,'Car','maruti'),
(4601,1,'Car','benz'),
(4601,1,'Car','honda')
declare @tt table (ID INT,VID INT,Sname Varchar(10),Rname Varchar(10))
INSERT INTO @tt (ID,VID,Sname,Rname)VALUES
(1,1,'Bike','Dio'),
(1,1,'Bike','Pulsar'),
(1,1,'Bike','Duke') ,
(2,1,'Cloth','jeans'),
(2,1,'Cloth','shirts'),
(2,1,'Cloth','short')
INSERT INTO @t (ID,VID,Sname,Rname)
Select (select MAX(ID)+1 FROM @t)Id,ROW_NUMBER()OVER(ORDER BY VID)VID,Sname,Rname
from @tt
我沒有身份屬性上的任一表。
如何獲得輸出這樣的:
ID VID Sname Rname
4601 1 Car maruti
4601 2 Car benz
4601 3 Car honda
4602 1 Bike Dio
4602 2 Bike Pulsar
4602 3 Bike Duke
4603 1 Cloth jeans
4603 2 Cloth shirts
4603 3 Cloth short
而不是添加1至MAX(ID)的添加@ tt.ID。 – DeadZone