Compartilhar via


.delete table records - comando de exclusão reversível

Aplica-se a: ✅Azure Data Explorer

Para excluir temporariamente registros individuais sem uma garantia do sistema de que os artefatos de armazenamento que contêm esses registros também sejam excluídos, use o comando a seguir. Esse comando marca os registros como excluídos, mas não exclui necessariamente os dados dos artefatos de armazenamento. Para mais informações, confira Exclusão temporária.

Para excluir registros individuais com uma garantia do sistema de que os artefatos de armazenamento que contêm esses registros também sejam excluídos, consulte Limpeza de dados.

Sintaxe

.delete[async] table Nome_da_ records tabela [with ( nome_da_propriedade valor_da_=propriedade [,...]])<| Predicado

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
async string Se especificado, indica que o comando é executado no modo assíncrono.
TableName string ✔️ O nome da tabela da qual os registros serão excluídos.
propertyName, propertyValue string Uma lista separada por vírgulas de pares de propriedades chave-valor. Consulte as propriedades suportadas.
Predicado string ✔️ O predicado que retorna registros a serem excluídos, que é especificado como uma consulta. Veja a observação.

Observação

As seguintes restrições se aplicam ao Predicado:

  • O predicado deve ter pelo menos um where operador.
  • O predicado só pode usar os seguintes operadores: extend, where e project.
  • O predicado não pode usar externaldata.

Propriedades aceitas

Nome Tipo Descrição
whatif bool Se true, retorna o número de registros que serão excluídos em cada fragmento, sem realmente excluir nenhum registro. O padrão é false.

Devoluções

A saída do comando contém informações sobre quais extensões foram substituídas.

Exemplo: excluir registros de um determinado usuário

Para excluir todos os registros que contêm dados de um determinado usuário:

.delete table MyTable records <| MyTable | where UserId == 'X'

Exemplo: verificar quantos registros seriam excluídos de uma tabela

Para determinar o número de registros que seriam excluídos pela operação sem realmente excluí-los, verifique o valor na coluna RecordsMatchPredicate ao executar o comando no whatif modo:

.delete table MyTable records with (whatif=true) <| MyTable | where UserId == 'X'

.delete materialized-view records - comando de exclusão reversível

Quando a exclusão reversível é executada em exibições materializadas, os mesmos conceitos e limitações se aplicam.

Sintaxe - exibições materializadas

.delete[async] materialized-view MaterializedViewName records [with ( propertyName = propertyValue [, ...]])<| Predicado

Saiba mais sobre as convenções de sintaxe.

Parâmetros - visualizações materializadas

Nome Digitar Obrigatória Descrição
async string Se especificado, indica que o comando é executado no modo assíncrono.
MaterializedViewName string ✔️ O nome da exibição materializada da qual os registros serão excluídos.
propertyName, propertyValue string Uma lista separada por vírgulas de pares de propriedades chave-valor. Consulte as propriedades suportadas.
Predicado string ✔️ O predicado que retorna registros a serem excluídos. Especificado como uma consulta.

Observação

As mesmas restrições no Predicado mencionado para a tabela também se aplicam aqui. A exclusão reversível pode falhar em caso de conflitos com o processo de materialização em execução em segundo plano. Repetir a operação pode ajudar nesse caso. Para evitar conflitos, você pode desabilitar a exibição materializada antes de executar a exclusão reversível e reativá-la quando a operação for concluída. O uso da função materialized_view() não é permitido no Predicado.

Propriedades com suporte - exibições materializadas

Nome Tipo Descrição
whatif bool Se true, retorna o número de registros que serão excluídos em cada fragmento, sem realmente excluir nenhum registro. O padrão é false.

Exemplo - exibições materializadas

Para excluir todos os registros de exibição materializados que contêm dados de um determinado usuário:

.delete materialized-view MyMaterializedView records <| MyMaterializedView | where UserId == 'X'

Exemplo: verificar quantos registros seriam excluídos de uma exibição materializada

Para determinar o número de registros que seriam excluídos pela operação sem realmente excluí-los, verifique o valor na coluna RecordsMatchPredicate ao executar o comando no whatif modo:

.delete materialized-view MyMaterializedView records with (whatif=true) <| MyMaterializedView | where UserId == 'X'