在數據庫的操作中,更新數據,是很常見的環境。好比,明細表中稀有量和單價欄位,想要更新到金額欄位,以及將總金額匯總到合計表中去,都需要利用update語句
建立一個姑且表,用于演示sqlserver語法中update更新點竄利用方式
IF OBJECT_ID('tempdb..#tblUpdate') IS NOT NULL DROP TABLE #tblUpdate;
CREATE TABLE #tblUpdate(
Code varchar(50),
Num int,
Price int,
Total int
);
 建立別的一個姑且表,用于演示若何將一個姑且表的數據更新到別的一個姑且表
IF OBJECT_ID('tempdb..#tblTotal') IS NOT NULL DROP TABLE #tblTotal;
CREATE TABLE #tblTotal(
Code varchar(50),
Total int
);
 往姑且表中插入幾行測試數據,此中的Total欄位都不插入值
insert into #tblUpdate(Code, Num, Price) values('Code1', 30, 1);
insert into #tblUpdate(Code, Num, Price) values('Code2', 40, 2);
insert into #tblTotal(Code) values('Code1');
insert into #tblTotal(Code) values('Code2');
 查詢姑且表中的測試數據
select * from #tblUpdate;
select * from #tblTotal;
 利用update更新姑且表#tblUpdate中的Total成果,假設Total = num * price
update #tblUpdate
set Total = Num * Price
 再次查詢姑且表#tblUpdate的成果,可以看到之前為NULL的Total列都有值了
select * from #tblUpdate;
 若是要將姑且表#tblUpdate的total欄位值,更新光臨時表#tblTotal對應的total欄位,就可以利用下面的體例
update t
set t.Total = u.Total
from #tblTotal t
left join #tblUpdate u on u.Code = t.Code
 查詢更新后的成果,可以看到兩個姑且表中Code不異的記實,total值也不異了
select * from #tblUpdate;
select * from #tblTotal;
 0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!