打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Mysql Update语句 SET多字段时,使用 逗号连接和AND连接的区别
但往往一些经验比较欠缺的选手(就比如说我...)中在写SQL的时候,并无法瞬间写出标准格式的SQL语句。下面我就简单描述下我的个人经历!
表结构和表数据如下所示:
CREATE TABLE `coupon_pool` (`id` int(12) NOT NULL AUTO_INCREMENT,`pub_id` varchar(12) NOT NULL COMMENT '',`serialno` varchar(32) NOT NULL DEFAULT '' COMMENT '',`name` varchar(50) NOT NULL COMMENT '',PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 COMMENT='测试表';-- ------------------------------ Records of coupon_pool-- ----------------------------INSERT INTO `coupon_pool` VALUES ('10', '2017031901', '20170319010001', '名字1' );INSERT INTO `coupon_pool` VALUES ('11', '2017031901', '20170319010002', '名字2');INSERT INTO `coupon_pool` VALUES ('12', '2017031901', '20170319010003', '名字3');INSERT INTO `coupon_pool` VALUES ('13', '2017031901', '20170319010004', '名字4');INSERT INTO `coupon_pool` VALUES ('14', '2017031901', '20170319010005', '名字5');
现在我要将id为10的记录的serialno和name字段分别更新为20170319010010和名字10。
正确的UPDATE SQL语句,需要更新的字段之间使用逗号连接,如下所示:
UPDATE coupon_pool SET serialno = '20170319010010' , name = '名字10'  WHERE id = 10;
SQL执行结果如图:
测试使用的UPDATE SQL语句,使用AND来连接两个字段,如下所示:
UPDATE coupon_pool SET serialno = '20170319010010' AND name = '名字10'  WHERE id = 10;
更新结果serialno被更新为了0,name字段并没有发生改变!!!
为什么会出现这种结果呢???
现在我们换个测试语句再试下(记得将刚才更新过的数据serialno和名字 修改为原先的数据 serialno=20170319010001,name=名字1)
UPDATE coupon_pool SET serialno = '20170319010001' AND name = '名字1'  WHERE id = 10;
serialno更新为了1,此时我相信比较牛逼的选手已经知道是怎么回事了吧!!!
如果还不知道怎么回事的话,打开Mysql,输入SHOW VARIABLES LIKE 'sql_mode';
然后再看下逻辑运算符 AND OR,应该就已经知道Mysql为什么允许执行用AND连接的SQL语句,以及Mysql再执行这种SQL语句的时候,实际如何解析的。
说到这里,还有不懂的兄弟的话,就留言吧。  2333333333
xdm,快活不下去了,弄了一个领外卖红包的公众号,大家点外卖的时候,先在公众号里面领下优惠券,支持一波。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
InnoDB 存储引擎以及三种日志
单表100万数据,不同连接池和不同语句的测试验证!
《MySQL数据库项目式教程》项目四 数据更新
mysql sql语句大全_mysql sql语句面试题_mysql的常用sql语句
SQL 分组函数 GROUP BY 的基本使用
Node.js中JavaScript操作MySQL的常用方法整理
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服