mysql使用疑点
1.mysql 查询 如果查询结果超过百分之30会全表扫描,不走索引(但是我测试结果有时候有效 有时候无效)


查询结果超过表总数据的一半 还是使用到了索引
2.如果数据库的某个字段 就是固定的两,三个值 比如表示状态的字段 ,是否需要建立索引 (如果按照查询结果超过百分之30就没有必要建立索引的话 我认为这是不需要的),所以有疑问
3.where语句中使用 or,但是没有把or中所有字段加上索引。 这种情况,如果需要使用索引需要将or中所有的字段都加上索引(这里测试即使or上的所有字段都加索引也不起作用,innodb和myisam都不起作用,用公司测试有效,可能跟mysql版本有关)
4.mysql查询只使用一个索引,因此如果where子句中已经使用了索引的话,那么 order by中的列是不会使用索引的。因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。
5.隐式转换(有专门文章)
6.mysql语句中使用or的效率高 还是把or条件 分开效率高(无数据 没有测试)
7.mysql字段离散度索引的疑问

浙公网安备 33010602011771号