首页 > 代码库 > sql技巧
sql技巧
1、负向条件查询不能使用索引
2、前导模糊查询不能使用索引
3、数据区分度不大的字段不宜使用索引
4、在字段上计算不能命中索引
5、如果业务大部分是单条查询,使用Hash索引性能更好
B-tree索引的时间复杂度是O(log(n))
Hash索引的时间复杂度是O(1)
6、允许为null的列,查询有潜在大坑
7、符合索引最左前缀,并不是指SQL语句的where顺序要和复合索引一致
8、使用ENUM而不是字符串
字符串占用空间大、效率低
9、如果明知道只有一条结果返回,limit 1 能够提高效率
10、把计算放到业务层而不是数据库层,除了节省数据的cpu,还有意想不到的查询缓存优化效果
11、强制类型转换会全表扫描
select * from user where phone = 145682136547
phone是字符串的话不会走索引的,加了引号就走索引了
12、不适用select * ,只返回需要的列,能够大大节省数据传输量,与数据库的内存适用量
sql技巧
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。