> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentação para manipulação de expressões de chave

# ALTER TABLE ... MODIFY ORDER BY

```sql theme={null}
ALTER TABLE [db].name [ON CLUSTER cluster] MODIFY ORDER BY new_expression
```

O comando altera a [chave de ordenação](/pt-BR/reference/engines/table-engines/mergetree-family/mergetree) da tabela para `new_expression` (uma expressão ou uma tupla de expressões). A chave primária permanece a mesma.

O comando é leve no sentido de alterar apenas os metadados. Para preservar a propriedade de que as linhas das partes de dados sejam ordenadas pela expressão da chave de ordenação, você não pode adicionar à chave de ordenação expressões que contenham colunas existentes (apenas colunas adicionadas pelo comando `ADD COLUMN` na mesma consulta `ALTER`, sem valor padrão para a coluna).

Pelo mesmo motivo, você não pode alterar a direção de ordenação (`ASC` ou `DESC`) de uma coluna da chave de ordenação que `new_expression` mantém: as partes existentes continuam fisicamente ordenadas na direção que a coluna tinha quando foram gravadas, e nenhuma parte de dados comum registra essa direção. Para usar uma direção diferente, crie uma nova tabela com o `ORDER BY` desejado e copie os dados para ela com `INSERT ... SELECT`.

<Note>
  Isso só funciona para tabelas da família [`MergeTree`](/pt-BR/reference/engines/table-engines/mergetree-family/mergetree) (incluindo tabelas [replicadas](/pt-BR/reference/engines/table-engines/mergetree-family/replication)).
</Note>

**Parte de:** `ALTER`

**Relacionados:** `ALTER`, `CREATE TABLE`, `ALTER TABLE ... MODIFY SAMPLE BY`
