在做update的时候,经常会遇到想把a表的值,通过公共字段连接修改成b表的值这时候在oracle中,可以使用update <table1_name> tab1 set <column_name> = (select <column_name> from <table2_name> tab2 where tab1.**=tab2.**);但是相同的操作在MySql中操作,就会报错,错误大概:[Err] 1093 – You can't specify target table ‘tab1' for update in FROM clause 原因是对同一张表进行了读写操作,那么在mysql可以用join的方式去做update:update <table1_name>,<table2_name> set <table1_name>.** = <table2_name>.**where <table1_name>.** = <table2_name>.**; —–公共字段http://www.webqd.org转载: 编程知识库
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有