SQL批量更新数据
step1:导入Excel数据,
具体见百度。注意点:一列中含有float型数据和文本数据的时候,导入要将Excel中的表格属性改成文本,或在数字项目前加个单引号。
step2:更新相同数据,联表查询更新数据
update tbparts set pdlprice=pprice from tbparts inner join tb2017 on tbparts.psn=tb2017.sn
step3:插入新增数据
3.1:SN导入后是Float型,需要转换成varchar。用cast转换可以,convert不管用。
update tb2017 set csn=CAST(CAST(sn AS DECIMAL(20,0)) AS VARCHAR(50))
3.2:批量导入新增数据
INSERT INTO [TBParts] ([PSN],[PName],[PState],[PDLPrice],[PMPrice],[PCreateTime],[PKState],[PType])
select csn,pdesc,0,pprice,pprice,getdate(),'库存件' ,''from tb2017 where sn not in (select psn from tbparts )
step4:删除多余数据
delete from tbparts where psn not in (select sn from tb2017)