[點晴永久免費(fèi)OA]SQLServer 批量修改或插入
當(dāng)前位置:點晴教程→點晴OA辦公管理信息系統(tǒng)
→『 經(jīng)驗分享&問題答疑 』
場景今天在工作中遇到這么一個場景,我需要根據(jù)條件對表A做批量更新或插入。因為條件比較復(fù)雜,所以我使用了臨時表B,先把需要更新或插入的數(shù)據(jù)查詢出來放入臨時表。然后更新表A的某字段,更新條件是A.id = B.id,更新效果是若記錄存在表A中,則更新表A的字段,若不在表A中,則插入一條記錄到表A。 初始方案首先想到的是寫兩條SQL:
兩條SQL執(zhí)行完,則完成了所有數(shù)據(jù)的更新和插入。 優(yōu)化方案select ... into #temp from A where ... merge [A] a using #B b on a.id = b.id when matched then update set a.field = 1 when not matched by target then insert (field) values (b.id); 該文章在 2023/7/15 10:24:07 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |