sql数据语句多个orderby查询性能问题

当sql语句  order by [A] desc ,[B] desc 多个排序字段会造成查找性能变慢。

解决方法1

合并A,B两个字段成C,按照C去排序(优点不用说了,彻底解决了问题,缺点,就是是后期添加的改动起来设计东西比较多,很麻烦,改动大,建议早期设计时尽量避免多个字段查询)

 

解决方法2

增加索引(优点,方法简单。数据太多时,设计代码多时,倒是可以省去很多工作量。缺点,性能不能达到很完美。)

 

解决方法3

数据库取出后,在代码中修改排序(优点,代码中排序方法多,网上提供的成熟算法也多。实现起来并不难,对于数据量一般的情况下,性能很好。缺点,当数据库和服务器不在同一服务器,数据量很大时,会很麻烦,性能严重受影响,只适合数据量小的表)

 

总结: 设计时尽量避免多个字段排序,可以设计一个c,d,e等专门用来排序的字段,当然你数据量,业务小就无所谓了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值