日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

sql更新語句中update?set?from用法實現(xiàn)_MsSql

作者:zeternityyt ? 更新時間: 2022-04-21 編程語言

????????執(zhí)行一般的sql更新語句為update table_name set column_name=value where column_name1=value1;但是我們有時候需要將某個表用的字段根據(jù)兩個表中相關字段更新為另一個表中某個字段的數(shù)據(jù),即a表中主鍵aid在b表中有個外鍵bid相關,b表中字段b需要根據(jù)a、b表對應id更新為a表中字段c的數(shù)據(jù),如果根據(jù)以上的sql一條一條的更新會非常浪費時間,所以我們需要用到update set from的語句用法。

????? ? 在數(shù)據(jù)庫中有一張表為student,如下所示:

????????如果以真實的情況來看的話,在一張學生表里,那么有些人的年齡是錄入錯誤的,那么我們需要修改這些錯誤,在數(shù)據(jù)量非常大的情況下,這些數(shù)據(jù)修改起來是很費時間的,所以我們可以用一張excel表核對好所有學生信息,然后導入數(shù)據(jù)庫,成為一張臨時的表,如何用excel導入數(shù)據(jù)庫請參見:https://mp.csdn.net/postedit/79943833。

以下為我們導入的臨時表:

其中student_id為生成的guid,那么我們現(xiàn)在需要根據(jù)名字在更新他們的年齡,執(zhí)行以下sql語句:

update student set age=tm.age from temporary tm where student.name=tm.name

執(zhí)行成功后,就可以看到我們的student表已經(jīng)更新成功了:

注:更新、刪除等語句在執(zhí)行后都不可以撤銷,返回。所以在操作的時候已經(jīng)要小心謹慎,如果擔心操作失誤,可以先備份數(shù)據(jù)庫,或新建兩張一樣的表,先執(zhí)行一次,成功后再到正式的表中執(zhí)行。

原文鏈接:https://blog.csdn.net/zeternityyt/article/details/80041794

欄目分類
最近更新