Quero ordenar os registros da minha tasks
tabela de acordo com completed
e depois de acordo com workOrderID
, assim como posso fazer com a ORDER BY
cláusula de uma SELECT
consulta, para que isso
ID da tarefa | ID da ordem de trabalho | concluído |
---|---|---|
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 |
é armazenado assim
ID da tarefa | ID da ordem de trabalho | concluído |
---|---|---|
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 |
Quando tento, recebo um erro de sintaxe e não vejo essa funcionalidade mencionada nos documentos. Acho que isso pode acelerar algumas consultas.
CLUSTER
reescreve fisicamente uma tabela (e consequentemente todos os seus índices) de acordo com a ordem de classificação em um índice fornecido (ou salvo). Não vários.Considere um índice multicolunas para seu caso de uso.
A tabela reescrita está em perfeitas condições, todo o inchaço foi removido e o espaço de manobra por página de acordo com a
FILLFACTOR
configuração foi restaurado. Portanto, após preencher novamente o cache, você verá uma melhoria no desempenho se a tabela (e/ou índices) estiver inchada, independentemente da ordem de classificação. Tenha esse efeito colateral em mente.A própria ordem de classificação ajuda nas consultas para as quais a localidade dos dados foi melhorada (e/ou que precisam dessa ordem de classificação exata), mas não em outras (que podem ser prejudicadas). O efeito se deteriora com o tempo com gravações na tabela. Ver: