引用自:http://www.jincon.com/archives/120/ 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如 ...
分类:
数据库 时间:
2018-04-27 16:44:58
阅读次数:
152
1)foreign key 是个约束,意思是说如果你给A字段设置了外键约束,以后你要往A字段插入数据,这个数据一定是要在foreign key 后面跟的那个字段中存在的值。这个的意义就是约束了数据的完整性,不会插入错误的数据。 修改添加t_topic外键约束: 删除表t_topic外键: 2)UNI ...
分类:
其他好文 时间:
2018-04-23 16:37:28
阅读次数:
191
索引的原理当往某各个集合插入多个文档后,每个文档在经过底层的存储引擎持久化后,会有一个位置信息,通过这个位置信息,就能从存储引擎里读出该文档 MMAPv1:文件id+文件内offset WiredTiger: WiredTiger在存储文档时生成的一个key,通过这个key能访问到对应 的文档。 CPU飙升了?半天还是没出结果?要想提升速度,你是否想起了索引!!建立索引后,MongoDB会额外存储
分类:
数据库 时间:
2018-04-22 13:08:32
阅读次数:
166
INDEX 由于性能、智能结果等多方面原因,在搜索文本时,全文搜索一般要优于通配符和正则表达式,前者为指定列建立索引,以便快速找到对应行,并且将结果集智能排序。启用查询扩展可以让我们得到未必包含关键字的相关行,启用布尔模式可以让我们指定搜索内容不应包含的单词、各个关键词的权重等。 全文索引使用说明。 ...
分类:
数据库 时间:
2018-04-21 19:24:45
阅读次数:
233
仅供自己学习 结论写在前面: 1、尽量避免进行全表扫描,可以给where和order by涉及的列上建立索引 2、尽量在where子句中使用 !=或<>操作符,因为这样会导致引擎放弃索引而进行全表扫描 3、尽量避免在where子句中对字段进行null的判断(如:select id from t wh ...
分类:
数据库 时间:
2018-04-16 14:32:04
阅读次数:
230
1.关系模式存取方法 1.关系模式存取方法 存取方法是快速存取数据库中数据的技术。数据库管理系统一般提供多种存取方法。常用的存取方法为索引方法和聚簇(clustering)方法。 2.索引简介 当表的数据量比较大时,查询操作会比较耗时。建立索引是加快查询速度的有效手段,但数据更新时,维护相应的索引也 ...
分类:
数据库 时间:
2018-04-11 21:41:00
阅读次数:
218
(转)仅供自己学习,特此记录 1.选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录。例如,学生表中学号是具有唯一性的字段。为该字段建立唯一性索引可以很快的确定某个学生的信息。如果使用姓名的话,可能存在同名现象,从而降低查询速度。 2.为经常需要排序、分组和联合操作的字段建 ...
分类:
数据库 时间:
2018-04-09 18:49:05
阅读次数:
147
第一方面:30种mysql优化sql语句查询的方法1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3.应尽量避免在 where 子句中对字段 ...
分类:
数据库 时间:
2018-04-09 11:15:09
阅读次数:
178
1、数据库字段宽度尽量选小,尽量设计为not null。 2、使用join代替子查询,join尽量用小表连大表。 3、建立索引,最好不超过6个,否则insert 和 update 会影响性能。 1、不要在存在大量重复值的列上建索引。 2、尽量不要在where 中对字段进行null判断,引擎会放弃使用 ...
分类:
数据库 时间:
2018-04-06 23:49:05
阅读次数:
218
在一个千万级的数据库查寻中,如何提高查询效率? 1)数据库设计方面: a. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 b. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: s ...
分类:
数据库 时间:
2018-04-02 20:23:13
阅读次数:
192