Sql优化

对于Sql语句的优化

主要从索引,表字段,IO三个层面进行优化

首先是从索引层面

where 字句使用isnull,!=,in ,not in,or连接,以及模糊查询%在第一个位置、对字段进行表达式操作、对字段用函数进行操作导致全表扫描

1,isnull,解决:使用默认值

2.in not in 解决:使用exists not exists

3.or 解决:使用Union  Union all

从表字层面

建表的时候能使用数字类型的字段就是使用数字类型的字段,数字类型的字段作为查询条件比字符串快,因为引擎处理的时候字符串是逐一比较每一字符的,对数字而言比较一次就够了

尽能使用varchar代替char,首先变长字段存储空间小,节省空间,其次对于查询来说,相对较小字段查询效率比较高

合理的增加冗余字段减少表的关联查询

从IO层面

不要使用select *因为多余的字段增加IO开销,也增加了网络的开销

尽量减少子查询,子查询会创建和销毁临时表,开销比较大

在where语句中把能过滤掉大量记录的字段放在前面









 

posted on   云中哥  阅读(35)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示