[数据库]MySQL 常用的UPDATE操作

0

2015-12-02 20:00:09

标签:UPDATE

概述

测试环境:mysql 5.6.21

步骤

创建测试表CREATE TABLE `product` ( `proID` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品表主键', `price` decimal(10,2) NOT NULL COMMENT '商品价格', `type` int(11) NOT NULL COMMENT '商品类别(0生鲜,1食品,2生活)', `dtime` datetime NOT NULL COMMENT '创建时间', PRIMARY KEY (`proID`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='商品表';CREATE TABLE `producttype` ( `ID` int(11) NOT NULL COMMENT '商品类别(0生鲜,1食品,2生活)', `amount` int(11) COMMENT '每种类别商品总金额', UNIQUE KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品类别资金汇总表'

插入测试数据INSERT INTO product(price,type,dtime) VALUES(10.00,0,now()),(10.00,1,now()),(10.00,1,now()),(20.00,2,now()),(30.00,3,now());INSERT INTO producttype(ID) VALUES(1),(2),(3);

SELECT * FROM product;SELECT * FROM producttype;

单表更新操作UPDATE productSET price='20.00',type=0 WHERE proID=2;

关联更新操作UPDATE producttype,productSET producttype.amount=product.pricewhere product.TYPE = producttype.ID AND product.TYPE=1;

1.查询所有字段INSERT INTO producttype(ID) VALUES(4);

UPDATE producttypeSET producttype.amount= (SELECT ifnull(SUM(product.price),0.00) FROM product WHERE product.TYPE = producttype.ID GROUP BY product.TYPE);

注意:大家注意看到rows matched:4,表示符合条件的记录是4条,实际更新了三条,关联语句默认不去判断里面的关联的时间行。

2.只查询需要更新的字段UPDATE producttypeSET amount=null;

UPDATE producttype,product SET producttype.amount= (SELECT ifnull(SUM(product.price),0.00) FROM product WHERE product.TYPE = producttype.ID GROUP BY product.TYPE) where product.TYPE = producttype.ID;

改用下面这种方法:Rows matched:3,查询到了符合条件的行是3行,没有查询无关联的行。

总结

mysql的update的关联操作在5.6中后面不能直接接FROM语句,只能UPDATE 所有的连接表然后WHERE,如果之前有事情其它数据库产品的习惯在这里要注意了。

文章如果对大家有帮助,请帮忙推荐,谢谢!!!

备注:

作者:pursuer.chen

博客:http://www.cnblogs.com/chenmh

本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接,否则保留追究责任的权利。

《欢迎交流讨论》

---恢复内容结束---

本文网址:http://www.shaoqun.com/a/163920.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

MYSQL

0

mysql 数据库update_[数据库]MySQL 常用的UPDATE操作相关推荐

  1. mysql 页 存储,MySQL InnoDB Engine--数据页存储和UPDATE操作

    叶子节点数据: ## 主键索引叶子节点数据 06 06 06 00 00 10 00 27 41 41 30 30 30 31 00 00 00 00 05 4F 38 00 00 00 91 04 ...

  2. mysql rr 更新失败_RR 级别下 update 操作的是快照读还是当前读?

    我们知道在 RR 级别下,重复的 select 操作,读取的值都会是一致的.即便在两次 select 操作的中间,有一个事务 B 修改了值,但是在事务 A 中 select 读取的值还是一致的. 那么 ...

  3. mysql 1032 update_解决mysql 1032 主从错误

    1032错误----现在生产库中好多数据,在从库误删了,生产库更新后找不到了,现在主从不同步了,再跳过错误也没用,因为没这条,再更新还会报错 临时解决方案 mysql> stop slave; ...

  4. mysql数据库优化课程---15、mysql优化步骤(mysql中最常用最立竿见影的优化是什么)...

    mysql数据库优化课程---15.mysql优化步骤(mysql中最常用最立竿见影的优化是什么) 一.总结 一句话总结:索引优化最立竿见影 索引优化:不然有多少行要扫描多少次,1亿行大概是5到10分 ...

  5. mysql使用数据库_MySQL数据库的常用操作

    学习python少不了和数据库打交道,常见的数据库有:MySQL.SQLite.MongoDB.Redis等,这里主要介绍一下MySQL数据库的基本操作. 数据库听起来感觉好高大上,当你接触之后有种恍 ...

  6. mysql 5.0 数据库_mysql5.0常用命令

    MySQL常用操作基本操作,以下都是MySQL5.0下测试通过首先说明下,记住在每个命令结束时加上:(分号) 1.导出整个数据库 mysqldump -u 用户名 -p --default-chara ...

  7. datetime类型怎么输入_精心整理MySQL基本使用(数据库的操作、数据类型、MySQL的常用命令)...

    前言:瑞典 MySQL AB 公司开发,目前属于 Oracle 公司. MySQL是一种关联数据库管理系统 由于其体积小.速度快.总体拥有成本低.MySQL软件采用了双授权政策(本词条"授权 ...

  8. 13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复

    mysql用户管理 1.创建一个普通用户并授权 [root@gary-tao ~]# mysql -uroot -p'szyino-123' Warning: Using a password on ...

  9. MySQL(用户管理,常用sql语句,数据库备份恢复,MySQL调优,恢复误操作数据)...

    一.MySQL用户管理. 一个MySQL数据库里可以跑多个库,总不能给所有人的程序员root用户,则可以给他们单独的用户访问数据库. 创建用户:(grant all on *.* to 'user1' ...

  10. mysql数据库中命令行下常用命令的操作(增、删、改、查)和数据类型

    连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 创建数据库:create database [库名] 显示所有数据库: show databases; 打开数据库:use [ ...

最新文章

  1. EditPlus 更新到 v2.31 Build 488(附下载)
  2. WaitForMultipleObjects用法详解,一看就懂
  3. 软件工程概论 课堂练习【图书馆系统的类图】
  4. 【Android】12.3 在当前Activity中获取另一个Activity的返回值
  5. Shel脚本-初步入门之《03》
  6. 识别图片baidu ai php,PHP+百度AI OCR文字识别实现了图片的文字识别功能
  7. 针对科技文章的多标签分类
  8. sublime-安装插件
  9. ADF开发遇到错误:JBO-26030 无法锁定记录,其他用户持有该锁
  10. spring test教程
  11. elementUI table 表格表头居中 颜色、内容居左
  12. mysql连接nacat_【mysql】使用Navicat连接数据库
  13. C语言链表的操作和讲解
  14. 魔兽世界服务器重置时间,大芒果魔兽世界单机版 如何更改所有副本的重置时间?...
  15. 没有公网ip怎么访问家里内网
  16. 市场调研报告-全球与中国船用下水推车市场现状及未来发展趋势
  17. Python3爬虫 爬句子迷
  18. 微信开发者工具下载及调试
  19. iOS Background Fetch 后台应用程序刷新的使用
  20. 华为面试题c/c++

热门文章

  1. k8s部署nacos2.0.3出现tried: server is DOWNnow, detailed error message: Optional[Distro protocol XXXX
  2. java 锯齿_Java2D图形抗锯齿
  3. 安卓Camera屏幕竖屏适配
  4. SMTP协议?SMTP端口号?SMTP服务器?
  5. scala 从入门到入门+
  6. 杂谈:人工智能发展的哲学研究
  7. power oj 2825: 拔河大赛(并查集)
  8. 一般试卷的纸张大小是多少_试卷字体多大合适 标准试卷的字体大小
  9. 电脑玩CF、DNF、LOL等游戏掉帧.卡顿.黑屏怎么办?驱动人生十大游戏检测图文教程
  10. mac top内存 cpu