tasks
我想根据completed
然后根据 来对表中的记录进行排序workOrderID
,就像我可以使用查询ORDER BY
的子句一样SELECT
,这样
任务ID | 工单ID | 完全的 |
---|---|---|
1 | 1 | t |
2 | 1 | F |
3 | 3 | t |
4 | 2 | t |
5 | 9 | t |
6 | 4 | F |
7 | 5 | F |
8 | 4 | t |
9 | 1 | F |
像这样存储
任务ID | 工单ID | 完全的 |
---|---|---|
1 | 1 | t |
4 | 2 | t |
3 | 3 | t |
8 | 4 | t |
5 | 9 | t |
2 | 1 | F |
9 | 1 | F |
6 | 4 | F |
7 | 5 | F |
当我尝试时,我收到语法错误,并且我没有看到文档中提到的功能。我认为这可以加快一些查询的速度。
CLUSTER
根据一个给定(或保存的)索引中的排序顺序物理重写表(及其所有索引)。不是多个。考虑为您的用例使用多列索引。
重写的表格处于原始状态,所有膨胀都被删除,并且根据设置
FILLFACTOR
恢复每页的摆动空间。因此,在重新填充缓存后,如果表(和/或索引)已经臃肿,与排序顺序无关,您将看到性能改进。请记住这个副作用。排序顺序本身有助于查询哪些数据局部性已得到改进(和/或哪些需要精确的排序顺序),但不能帮助查询其他数据局部性(可能会受到影响)。随着对表的写入,效果会随着时间的推移而恶化。看: