这时候在oracle中,可以使用
update<table1_name>tab1set<column_name>=(select<column_name>from<table2_name>tab2wheretab1.**=tab2.**);
但是相同的操作在mysql中操作,就会报错,错误大概:
[Err]1093–Youcan’tspecifytargettable‘tab1’forupdateinFROMclause
原因是对同一张表进行了读写操作,那么在mysql可以用join的方式去做update:
update<table1_name>,<table2_name>
set<table1_name>.**=<table2_name>.**
where<table1_name>.**=<table2_name>.**;—–公共字段