mysql update更新帶子查詢的實現方式

2021-09-01 19:50:22 字數 546 閱讀 5748

現在要做一下資料移植,需要更新相關的資料,需要在mysql中更新時不能將更新的表作為查詢的表。

總結一下:

一:單錶更新時

例如: update customer set category = 1 where  deleteflag = 0 and name = '22';

注意不要子查詢,mysql是不允許的。

二:帶子查詢的複雜更新

如:update tb a,

(select  time,name

from tt )b 

set time4=b.col

where a.name=b.name and a.time1=b.time;

注意點:

1、update 時,更新的表不能在set和where中用於子查詢;

2、update 時,可以對多個表進行更新(sqlserver不行);

如:update ta a,tb b set a.bid=b.id ,b.aid=a.id;  

3、update 後面可以做任意的查詢,這個作用等同於from;

MySQL update語句 批量更新某欄位

mysql 1 有時候要實現欄位的批量替換 update 表名 set 欄位a replace 欄位a png jpg 2 批量拼接字串到某欄位 update 表名 set 欄位a concat 欄位a update 表名 set 欄位a concat yyy 欄位a 3 批量擷取某欄位,扔掉開始的...

mysql update使用子查詢

今天我像以前操作oracle寫了乙個update sql update device user a set a.scene id null where a.id not in select min t.id from device user t group by t.device id 根據子查詢的...

mysql update使用子查詢

今天我像以前操作oracle寫了乙個update sql update device user a set a.scene id null where a.id not in select min t.id from device user t group by t.device id 根據子查詢的...