我在Microsfot SQL Server中有两个表COMPONENTS(sno,comp_name,quantity,costperunit,totalcost)
和COST(sno,comp_name,costperunit)
..
我提示用户输入costperunit
值并立即在COST
表中更新。
我想将costperunit
列的所有值从COMPONENTS
表导入COST
。
我试过这个:
insert into COMPONENTS(costperunit)
select costperunit from COST where COST.sno=COMPONENTS.sno
但我无法达到所需的功能。
有人请建议我更好地查询这样做.. 在此先感谢..
答案 0 :(得分:0)
如果要更新(!)所有值,为什么要插入?尝试使用“从选择更新”的方式:
UPDATE components
SET components.costperunit=cost.costperunit
FROM cost
INNER JOIN components ON cost.sno=components.sno
更好的是添加WHERE子句以仅更新更改的值: