
数据库
文章平均质量分 56
wanghaitao4j
创造价值,为人类社会做贡献。
展开
-
三范式-简单理解
文章部分内容截取自韩顺平老师教学资料。什么样的表才是符合3NF (范式)表的范式,是首先符合1NF, 才能满足2NF , 进一步满足3NF 1NF: 即表的列的具有原子性,不可再分解,即列的信息,不能分解, 只有数据库是关系型数据库(mysql/oracle/db2/informix/sysbase/sql server),就自动的满足1NF 2NF: 表中的记录是唯一的,...原创 2018-10-11 22:00:43 · 19806 阅读 · 5 评论 -
mysql优化之读写分离
读写分离我没有实际的操作,留下这篇文章等待实际学习和校验目前知道的概念是项目中读操作较多,会从slave数据库中读取,减轻负担,dml操作(insert update delete)从master数据库中操作,然后再进行master slave的复制,保持数据一致。等待具体操作和校验,留下思想,等我学习。 待续。。。...原创 2018-10-12 00:10:15 · 237 阅读 · 0 评论 -
分表技术
分表包括水平分表和垂直分表分表技术有(水平分割和垂直分割) 当一张越来越大时候,即使添加索引还慢的话,我们可以使用分表水平分表以qq用户表来具体的说明一下分表的操作.思路如图 :首先我创建三张表 user0 / user1 /user2 , 然后我再创建 uuid表,该表的作用就是提供自增的id,思路是根据ID除以3取余,余数为0/1/2不同,分别在三张表中,插入和...原创 2018-10-12 00:06:13 · 514 阅读 · 0 评论 -
如何选择mysql的存储引擎
在开发中,我们经常使用的存储引擎 myisam / innodb/ memorymyisam 存储: 如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎. ,比如 bbs 中的 发帖表,回复表. INNODB 存储: 对事务要求高,保存的数据都是重要数据,我们建议使用INNODB,比如订单表,账号表. 问 MyISAM 和 INNODB的区别1...原创 2018-10-11 23:00:25 · 228 阅读 · 0 评论 -
sql语句小技巧-持续更新
sql语句的小技巧-之前的项目使用的是hibernate+jpa,几乎没写过sql,还是要继续学习,以后在这里持续更新sql语句小技巧,也会学习其他大佬的文章和技巧。 在使用group by 分组查询是,默认分组后,还会排序,可能会降低速度. 比如:在group by 后面增加 order by null 就可以防止排序. 2.有些情况下,可以使用连接来替代子查...原创 2018-10-11 22:57:29 · 534 阅读 · 0 评论 -
mysql优化之explain 指令
网上已经有很好的explain指令的资料,mysql手册也提供了帮助。本文通过图片小结下。图片来源自韩顺平老师教学explain 可以帮助我们在不真正执行某个sql语句时,就执行mysql怎样执行,这样利用我们去分析sql指令....原创 2018-10-11 22:52:39 · 518 阅读 · 0 评论 -
创建索引后,速度变快原因?以及索引失效总结
总结自韩顺平老师教学速度变快是因为搜索引擎的选择,一般是Btree,二叉树的话是logn的时间复杂度;索引失效的总结。以下是具体描述。原理示意图: . 索引使用的注意事项索引的代价:占用磁盘空间 对dml操作有影响,变慢 在哪些列上适合添加索引? 总结: 满足以下条件的字段,才应该创建索引.a: 肯定在where条经常使用 b: 该字段...原创 2018-10-11 22:49:07 · 689 阅读 · 0 评论 -
mysql四种索引
四种索引(主键索引/唯一索引/全文索引/普通索引) 添加 1.1主键索引添加当一张表,把某个列设为主键的时候,则该列就是主键索引create table aaa(id int unsigned primary key auto_increment ,name varchar(32) not null defaul ‘’);这是id 列就是主键索引. 如果你...原创 2018-10-11 22:34:07 · 1258 阅读 · 0 评论 -
Sql语句本身的优化-定位慢查询
如何从一个大项目中,迅速的定位执行速度慢的语句. (定位慢查询)大部分内容总结自韩顺平老师教学首先我们了解mysql数据库的一些运行状态如何查询(比如想知道当前mysql运行的时间/一共执行了多少次select/update/delete.. / 当前连接) show status(用处很多,自己看文档,在此列举常用的) 常用的:show status like ‘up...原创 2018-10-11 22:28:29 · 1830 阅读 · 0 评论 -
sql经典笔试题
详见此处 表结构1.自行添加测试数据2.查询平均成绩大于60分的同学的学号和平均成绩;SELECT t1.sid 学生编号, AVG( t2.number ) 平均分 FROM student t1 LEFT JOIN score t2 ON t1.sid = t2.student_id GROUP BY t1.sid HAVING AVG( t2.nu...原创 2018-10-14 10:22:52 · 20855 阅读 · 2 评论