select id=identity(int,101,1),good_id,storage_num=0 into #t from 表a a where not exists( select * from 表2 where good_id=a.good_id)insert 表2 select storage_id='sa'+right(id+right((select max(storage_id) from 表2),3),3) ,good_id,storage_num from #t drop table #t
问题的关键是你没有说清楚storage_id的产生规则假设你已经有storage_id 如下: select good_id ,0 into 表2 from 表1 where good_id not in(select good_id from 表2 ) 这只是一个思路 另外,你也可以通过编程实现
TO kuailewangzi1212(快乐王子) storage_id和good_id的产生规则是一样的,只要前面固定两个字母,后面的只要是唯一的数字只就可以。TO zjcxc(邹建) 偶服了你,厉害,结果正是我想要的,谢谢了
into #t from 表a a
where not exists(
select * from 表2 where good_id=a.good_id)insert 表2
select storage_id='sa'+right(id+right((select max(storage_id) from 表2),3),3)
,good_id,storage_num
from #t
drop table #t
如下:
select good_id ,0 into 表2 from 表1 where good_id not in(select good_id from 表2 )
这只是一个思路
另外,你也可以通过编程实现
偶服了你,厉害,结果正是我想要的,谢谢了