update 高级用法

1、关联多表进去UPDATE

     update命令里对多个数据表里的相关记录做出修改。下面的这条命令将对数据表table1里的一些数据记录的columnA字段做出修改,新数据来自table2.columnB数据列,这两个字段之间的关系通过两个数据表里的同名ID字段tableID建立关系。

update table1,table2
set table1.columnA = table2.columnB
where table1.tableID = table2.tableID

  2、编辑排序清单的数据记录(update .. order by .. limit)

     如果只想对满足某种 排序条件的前N条或后N条数据记录进行修改,可以给update命令加上必要的order by 和 limit 子句。下面这条命令把tablename数据表里的name字段按字母排序后的前10条记录的mydata字段设置为零:

update tablename set mydata = 0 order by name limit 10;

 

  3、在Update中的set命令里加入子查询(高效的update)

     如果想更新apply表的para3字段,但是这个值来源是来自另一个表apply1,则可以参考以下语句。需要保证括号是的子查询的where子句要保证查询出来的字段值是唯一的一条记录。

update `apply` as cust set cust.para3 =
 ( select para3_table.para3 from `apply1` as  para3_table 
where cust.old_id = para3_table.id and cust.update_time = para3_table.update_time);

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(update)