影响排序速度的原因(从大到小):
1,选择的行数
2,ORDER BY子句里的列数
3,ORDER BY子句里的列的定义长度
增加行数会使得排序速度呈几何级数减慢
如果将排序的行数增加10倍,则排序的时间会变成20倍
尽可能的减少排序的行数
尽量减少排序的列数
适当减少排序的列的长度
最快的排序是对预先有一定排序的全部唯一的整数做升序排序
部分数据重复会减慢排序速度
预先排序会加快排序速度
列的定义的长度对排序会有影响
不同的DBMS对NULL的排序策略不同,不要写依赖于特殊NULL位置的排序
ORDER BY里使用表达式不是100%可移植的,但是ORDER BY LOWER(column1),ORDER BY SUBSTRING(column1 FROM 1 FOR 6),ORDER BY CAST(column1 AS CHAR...)这种可以加速排序
SELECT column1 FROM Table1会返回按column1排序的结果
如果column1不唯一,SELECT DISTINCT column1 FROM Table1会返回按column1排序的结果
省略ORDER BY是一个普遍的技巧,尽量不要给你的SQL加上ORDER BY
分享到:
相关推荐
### Cognos ReportNet 性能调优方案详解 #### 第一章 软件环境调优 在Cognos ReportNet系统中进行性能优化,首先需关注的是软件环境的配置,包括HTTP服务器(Web服务器)、应用服务器以及Cognos ReportNet自身的...
- **用途**: 查看最耗时或最频繁执行的SQL语句,通常用于性能调优。 - **4.4 INNODB_METRICS** - **用途**: 显示InnoDB引擎的各种统计信息,如缓存命中率等。 #### 五、MySQL系统配置参数 - **5.1 innodb_buffer_...
#### 六、solr性能调优 - **6.1 SchemaDesignConsiderations** - **6.1.1 indexedfields**:索引字段的设置对性能有直接影响。 - **6.1.2 storedfields**:存储字段的选择会影响搜索结果的返回速度。 - **6.2 ...
1. **基于Lucene自封装实现站内搜索**:虽然此方案具有较高的灵活性,但考虑到开发工作量大且后期维护成本较高,一般不作为首选。 2. **调用第三方搜索引擎API**(如Google、Baidu):这种方式虽然简便快捷,但由于...