SQL规约
2023-12-17 12:37:48
前言
SQL规约-索引
注意字段类型
防止因字段类型不同造成的隐式转换,导致索引失效
利用覆盖索引
利用覆盖索引来进行查询操作,避免回表
利用有序性
如果有 order by 的场景,请注意利用索引的有序性
禁模糊
页面搜索严禁左模糊或者全模糊,如果需要请走搜索引擎来解决。
超过三个表禁止 join
SQL规约-count
拒绝替代
不要使用 count(列名)或 count(常量)来替代count(*)
计算不重复行数
count(distinct col) 计算该列除 NULL 之外的不重复行数
当值全是NULL时
当某一列的值全是NULL时,count(col)的返回结果为 0,但sum(col)的返回结果为NULL
SQL规约-分页
若 count 为 0
分页查询逻辑时,若count 为 0 应直接返回
优化超多分页场景
利用延迟关联或者子查询优化超多分页场景
SQL规约-null值
使用 ISNULL()来判断是否为 NULL 值
NULL< >NULL
NULL< >NULL 的返回结果是 NULL,而不是 false
NULL=NULL
NULL=NULL 的返回结果是 NULL,而不是 true
NULL< >1
NULL< >1 的返回结果是 NULL,而不是 true
SQL规约-避坑指南
不得使用外键与级联,一切外键概念必须在应用层解决
禁止使用存储过程,存储过程难以调试和扩展,更没有移植性
数据订正时,要先 select,避免出现误删除,确认无误才能执行更新语句
只要涉及多个表,都需要在列名前加表的别名(或表名)进行限定
SQL 语句中表的别名前加 as,并且以 t1、t2、t3、…的顺序依次命名
in 后边的集合元素数量,控制在1000 个之内
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
文章来源:https://blog.csdn.net/i973635025/article/details/135042862
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!