mysql 数据库update_[数据库]MySQL 常用的UPDATE操作
[数据库]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操作相关推荐
- 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 ...
- mysql rr 更新失败_RR 级别下 update 操作的是快照读还是当前读?
我们知道在 RR 级别下,重复的 select 操作,读取的值都会是一致的.即便在两次 select 操作的中间,有一个事务 B 修改了值,但是在事务 A 中 select 读取的值还是一致的. 那么 ...
- mysql 1032 update_解决mysql 1032 主从错误
1032错误----现在生产库中好多数据,在从库误删了,生产库更新后找不到了,现在主从不同步了,再跳过错误也没用,因为没这条,再更新还会报错 临时解决方案 mysql> stop slave; ...
- mysql数据库优化课程---15、mysql优化步骤(mysql中最常用最立竿见影的优化是什么)...
mysql数据库优化课程---15.mysql优化步骤(mysql中最常用最立竿见影的优化是什么) 一.总结 一句话总结:索引优化最立竿见影 索引优化:不然有多少行要扫描多少次,1亿行大概是5到10分 ...
- mysql使用数据库_MySQL数据库的常用操作
学习python少不了和数据库打交道,常见的数据库有:MySQL.SQLite.MongoDB.Redis等,这里主要介绍一下MySQL数据库的基本操作. 数据库听起来感觉好高大上,当你接触之后有种恍 ...
- mysql 5.0 数据库_mysql5.0常用命令
MySQL常用操作基本操作,以下都是MySQL5.0下测试通过首先说明下,记住在每个命令结束时加上:(分号) 1.导出整个数据库 mysqldump -u 用户名 -p --default-chara ...
- datetime类型怎么输入_精心整理MySQL基本使用(数据库的操作、数据类型、MySQL的常用命令)...
前言:瑞典 MySQL AB 公司开发,目前属于 Oracle 公司. MySQL是一种关联数据库管理系统 由于其体积小.速度快.总体拥有成本低.MySQL软件采用了双授权政策(本词条"授权 ...
- 13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复
mysql用户管理 1.创建一个普通用户并授权 [root@gary-tao ~]# mysql -uroot -p'szyino-123' Warning: Using a password on ...
- MySQL(用户管理,常用sql语句,数据库备份恢复,MySQL调优,恢复误操作数据)...
一.MySQL用户管理. 一个MySQL数据库里可以跑多个库,总不能给所有人的程序员root用户,则可以给他们单独的用户访问数据库. 创建用户:(grant all on *.* to 'user1' ...
- mysql数据库中命令行下常用命令的操作(增、删、改、查)和数据类型
连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 创建数据库:create database [库名] 显示所有数据库: show databases; 打开数据库:use [ ...
最新文章
- EditPlus 更新到 v2.31 Build 488(附下载)
- WaitForMultipleObjects用法详解,一看就懂
- 软件工程概论 课堂练习【图书馆系统的类图】
- 【Android】12.3 在当前Activity中获取另一个Activity的返回值
- Shel脚本-初步入门之《03》
- 识别图片baidu ai php,PHP+百度AI OCR文字识别实现了图片的文字识别功能
- 针对科技文章的多标签分类
- sublime-安装插件
- ADF开发遇到错误:JBO-26030 无法锁定记录,其他用户持有该锁
- spring test教程
- elementUI table 表格表头居中 颜色、内容居左
- mysql连接nacat_【mysql】使用Navicat连接数据库
- C语言链表的操作和讲解
- 魔兽世界服务器重置时间,大芒果魔兽世界单机版 如何更改所有副本的重置时间?...
- 没有公网ip怎么访问家里内网
- 市场调研报告-全球与中国船用下水推车市场现状及未来发展趋势
- Python3爬虫 爬句子迷
- 微信开发者工具下载及调试
- iOS Background Fetch 后台应用程序刷新的使用
- 华为面试题c/c++
热门文章
- k8s部署nacos2.0.3出现tried: server is DOWNnow, detailed error message: Optional[Distro protocol XXXX
- java 锯齿_Java2D图形抗锯齿
- 安卓Camera屏幕竖屏适配
- SMTP协议?SMTP端口号?SMTP服务器?
- scala 从入门到入门+
- 杂谈:人工智能发展的哲学研究
- power oj 2825: 拔河大赛(并查集)
- 一般试卷的纸张大小是多少_试卷字体多大合适 标准试卷的字体大小
- 电脑玩CF、DNF、LOL等游戏掉帧.卡顿.黑屏怎么办?驱动人生十大游戏检测图文教程
- mac top内存 cpu