![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 60
gaisidewangzhan1
这个作者很懒,什么都没留下…
展开
-
Mysql 事务及数据的一致性处理--转载
转载自::https://juejin.im/entry/5a38a9046fb9a045076fc9b4在工作中,我们经常会遇到这样的问题,需要更新库存,当我们查询到可用的库存准备修改时,这时,其他的用户可能已经对这个库存数据进行修改了,导致,我们查询到的数据会有问题,下面我们就来看解决方法。在MySQL的InnoDB中,预设的Tansaction isolation level 为REPEAT...转载 2018-05-17 13:57:36 · 443 阅读 · 0 评论 -
MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较-转载
转载自:http://www.piaoyi.org/database/MYSQL-INT-TIMESTAMP-DATETIME.html建立表:CREATE TABLE IF NOT EXISTS `datetime_test` ( `id` int(11) NOT NULL, `d_int` int(11) NOT NULL DEFAULT '0', `d_timestamp` ti...转载 2018-05-27 15:38:28 · 1331 阅读 · 0 评论 -
sql联表查询常用
有三个表:T_USER, t_group, T_USER_GROUP,求分组某个平均数:[html] view plain copy3./*各部门平均奖金*/ select t_group.groupname as "部门", AVG(T_USER.bonus) AS "平均奖金" from t_group left join T_USER_GROUP on t_group.groupid ...转载 2018-05-08 15:41:20 · 172 阅读 · 0 评论 -
分组取前N记录
经常看到问题,如何取出每组的前N条记录。方便大家参考于是便把常见的几种解法列出于下。问题:有表 如下,要求取出各班前两名(允许并列第二)Table1+----+------+------+-----+| id |SName |ClsNo |Score|+----+------+------+-----+| 1 |AAAA | C1 | 67 || 2 |BBBB | C1 | 5...转载 2018-05-08 15:22:37 · 104 阅读 · 0 评论 -
Mysql批量插入事务插入性能对比
Mysql批量插入事务插入性能对比。对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长。特别像报表系统,可能每天花费在数据导入上的时间就会长达几个小时之久。因此,优化数据库插入性能是很有意义的。网络上的牛人很多,总会有一些手段可以提高insert效率,大家跟我一起分享一下吧:1. 一条SQL语句插入多条数据。我们常用的插入语句大都是一条一个insert,如:INSE...转载 2018-05-08 14:08:44 · 727 阅读 · 0 评论 -
同时查询最大值与最小值
考虑这样一个问题,库存量最大的商品或者库存量最小的商品都不止一个,同时取出它们信息,怎么取呢?select [ProductID] ,[ProductName],[UnitsInStock] from [Products] p where p.[UnitsInStock] = ( select max( [UnitsInStock] ) from [Products] p1) union ...转载 2018-05-08 09:21:34 · 2348 阅读 · 1 评论 -
sql优化经典例子-转载
场景我用的数据库是mysql5.6,下面简单的介绍下场景课程表create table Course(c_id int PRIMARY KEY,name varchar(10))数据100条学生表:create table Student(id int PRIMARY KEY,name varchar(10))数据70000条学生成绩表SCCREATE table SC(...转载 2018-05-07 17:35:29 · 920 阅读 · 0 评论 -
sql优化-这个排版较好-转载
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字...转载 2018-05-07 17:34:54 · 2257 阅读 · 0 评论 -
mysql优化杂文——转载
tips:这里是测试,生产环境中不要随意修改存储引擎,还有alter table 操作,会锁整张表,慎用。其次:myisam引擎没有事务,且只是将数据写到内存中,然后定期将数据刷出到磁盘上,因此突然断电的情况下,会导致数据丢失。而InnDB引擎,是将数据写入日志中,然后定期刷出到磁盘上,所以不怕突然断电等情况。因此在实际生产中能用InnDB则用。(一) 使用查询缓存优化查询大多数的MySQL服务器...转载 2018-05-07 16:49:53 · 135 阅读 · 0 评论 -
MySQL分库分表——保持数据一致性
MySQL分库分表 分类: MySQL2015-10-30 21:58:33MySQL处理大规模业务数据的方案一般都是分库分表.最开始一般都选择垂直拆分.比如电商网站,可能按照家电,图书,母婴等商品分类进行拆分.这样做的好处是拆分简单,并且没有破坏数据库事务.但是随着业务的增长,比如图书分类的订单数据表已经到达了10个T的规模.就需要考虑做水平拆分了.把逻辑上一个表的数据,分别存放到不同的数据库服...转载 2018-05-07 15:48:04 · 6856 阅读 · 0 评论 -
MySQL分库分表多维度查询——比较好的方法
转载自:http://blog.itpub.net/29254281/viewspace-2086198/MySQL分库分表,一般只能按照一个维度进行查询.以订单表为例, 按照用户ID mod 64 分成 64个数据库.按照用户的维度查询很快,因为最终的查询落在一台服务器上.但是如果按照商户的维度查询,则代价非常高.需要查询全部64台服务器.在分页的情况下,更加恶化.比如某个商户查询第10页的数据...转载 2018-05-07 15:47:13 · 23049 阅读 · 0 评论 -
PHP开发异步高性能的MySQL代理服务器
MySQL数据库对每个客户端连接都会分配一个线程,所以连接非常宝贵。开发一个异步的MySQL代理服务器,PHP应用服务器可以长连接到这台Server,既减轻MYSQL的连接压力,又使PHP保持长连接减少connect/close的网络开销。此Server考虑到了设置了数据库连接池尺寸,区分忙闲,mysqli断线重连,并设置了负载保护。基于swoole扩展开发,io循环使用epoll,是全异步非阻塞...转载 2018-04-26 21:38:00 · 133 阅读 · 0 评论 -
MySQL字段属性应该尽量设置为NOT NULL
除非你有一个很特别的原因去使用 NULL 值,你应该总是让你的字段保持 NOT NULL。这看起来好像有点争议,请往下看。1、首先,我们要搞清楚空值("") 和 “NULL” 的概念: 1)空值是不占用空间的 2)MySQL中的NULL其实是占用空间的所谓的NULL就是什么都没有,连\0都没有,\0在字符串中是结束符,但是在物理内存是占空间的,等于一个字节,而NULL就是连这一个字节...转载 2018-05-27 15:41:58 · 801 阅读 · 0 评论