sql - How to do autoincrement based on last value from another table? -


i'm inserting data 1 table table. take last value first table id , need increment there, have taken max(id) + 1 , doing increment i'm getting same values

declare @t table (id int,vid int,sname varchar(10),rname varchar(10))  insert @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 @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 @t (id,vid,sname,rname)  select (select max(id)+1 @t)id,row_number()over(order vid)vid,sname,rname  @tt 

i don't have identity property on either tables.

how output this:

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 

i think, looking this.

use max(id) of @t + id incremented values of id , row_number() partition by partitioned values of vid

insert @t (id,vid,sname,rname) select (select max(id) @t) + id id,row_number()over(partition id order vid)vid,sname,rname @tt 

inserted values

4602    1   bike    dio 4602    2   bike    pulsar 4602    3   bike    duke 4603    1   cloth   jeans 4603    2   cloth   shirts 4603    3   cloth   short 

Comments

Popular posts from this blog

Email notification in google apps script -

c++ - Difference between pre and post decrement in recursive function argument -

javascript - IE11 incompatibility with jQuery's 'readonly'? -