博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql update操作
阅读量:5967 次
发布时间:2019-06-19

本文共 1050 字,大约阅读时间需要 3 分钟。

update语法

Single-table语法:

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]

Multiple-table语法:

UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]

UPDATE语法可以用新值更新原有表行中的各列。SET子句指示要修改哪些列和要给予哪些值。WHERE子句指定应更新哪些行。如果没有WHERE子句,则更新所有的行。如果指定了ORDER BY子句,则按照被指定的顺序对行进行更新。LIMIT子句用于给定一个限值,限制可以被更新的行的数目。

 

如果您在一个表达式中通过tbl_name访问一列,则UPDATE使用列中的当前值。例如,以下语句把年龄列设置为比当前值多一:

UPDATE persondata SET age=age+1;

UPDATE赋值被从左到右评估。例如,以下语句对年龄列加倍,然后再进行增加:

UPDATE persondata SET age=age*2, age=age+1;

如果您把一列设置为其当前含有的值,则MySQL会注意到这一点,但不会更新。

update表的某些字段为null

update person set number=null,name=null;

如果您把被已定义为NOT NULL的列更新为NULL,则该列被设置到与列类型对应的默认值,并且累加警告数。对于数字类型,默认值为0;对于字符串类型,默认值为空字符串('');对于日期和时间类型,默认值为“zero”值。

 

多个表的UPDATE操作

UPDATE items,month SET items.price=month.price WHERE items.id=month.id;

以上的例子显示出了使用逗号操作符的内部联合,但是multiple-table UPDATE语句可以使用在SELECT语句中允许的任何类型的联合,比如LEFT JOIN,但是您不能把ORDER BY或LIMIT与multiple-table UPDATE同时使用。

 

转自 

转载地址:http://qwqax.baihongyu.com/

你可能感兴趣的文章
opencv第一课 打开一个图片
查看>>
二分查找
查看>>
linux目录结构
查看>>
adb无线网络调试
查看>>
java.lang.ClassCastException
查看>>
YbSoftwareFactory 代码生成插件【二十二】:CMS基础功能的实现
查看>>
linux系统调用和库函数调用的区别
查看>>
怎样一步一步删除(linux & UNIX)环境下 oracle 11g 集群节点
查看>>
排序算法
查看>>
DevExpress.XtraGrid
查看>>
linux awk命令详解,使用system来内嵌系统命令,批量github,批量批下载视频, awk合并两列...
查看>>
Gym 100952B&&2015 HIAST Collegiate Programming Contest B. New Job【模拟】
查看>>
ortp库使用入门
查看>>
常用系统存储过程有:
查看>>
Matlab 二维绘图函数(plot类)
查看>>
POJ 1195 Mobile phones
查看>>
C++井字棋游戏,DOS界面版
查看>>
第一天课程:第一个python程序print say hello
查看>>
Redis分布式锁实现
查看>>
重温java中的String,StringBuffer,StringBuilder类
查看>>