码迷,mamicode.com
首页 > 其他好文 > 详细

update 高级用法

时间:2015-03-03 20:28:10      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:

1、关联多表进去UPDATE

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

Sql代码  技术分享
  1. update table1,table2  
  2. set table1.columnA = table2.columnB  
  3. where table1.tableID = table2.tableID  

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

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

Sql代码  技术分享
  1. update tablename set mydata = 0 order by name limit 10;  

 

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

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

Sql代码  技术分享
  1. update `apply` as cust set cust.para3 =  
  2.  ( select para3_table.para3 from `apply1` as  para3_table   
  3. where cust.old_id = para3_table.id and cust.update_time = para3_table.update_time);  

 

update 高级用法

标签:

原文地址:http://www.cnblogs.com/dsphper/p/4311705.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!