sql批量修改從某一表中得到的資料

2021-05-23 16:14:24 字數 855 閱讀 3562

例項:

修改table_a中符合條件的資料,資料是從table_c中查出來的。

常用於 假如a表中資料有c表中資料批量插入得到( insert into a(aa,bb) values select aa,bb from c  ) 而c表又突然需要增加一欄位,且資料還是要從a表中得到,這時就可以利用此方法,批量修改c表中的某字段讓其等於a表中查出來的資料。

(大家還有其他更好的方法也可以拿來分享一下)

(前提要兩個表中的字段結構要相同)

select identity(int,1,1) as id, classes,username,fenshu into #tmptable  from table_c

select * from #tmptable              --建立的臨時表用來存放要修改的資料

declare @total int, @i int

declare @classes varchar(20),

@username varchar(12),

@fenshu  varchar(12)

select @total=count(*) from #tmptable

set @i=0

while @i<@total

begin

set @i=@i+1

select @classes=classes,@username= username,@fenshu=fenshu from #tmptable where id=@i

update table_a set  fenshu=@fenshu  where   classes=@classes and  username=@username

end

sql得到表中的列資訊

取列全部用的 sys.中的表 cte with name as 用法 sql樹形查詢 主鍵資訊 改表中的列 select from sys.columns colm inner join sys.types systype on colm.system type id systype.system ...

My SQL筆記一(表的建立 修改 刪除)

分別說明mysql資料庫中表在建立 修改和刪除過程中的各種操作和約束處理。建立表 creat tabel if not exists tabel name column name column type 分單字段主鍵和多字段主鍵。單字段主鍵語法 屬性名 屬性型別 primary key 多欄位主鍵語...

Matlab 批量修改nc檔案中某乙個變數的數值

場景 發現nc檔案中某個變數的數值存在問題,修改在原始檔基礎上修改。注意事項 1 修改nc檔案中的 time 變數為例 read original nc file dirpath wind infilelist dir dirpath,nc 讀取整個資料夾下的列表,存入結構體 for i 1 468...