A consulta Exists, também conhecida como consulta NULL ou consulta de valor NULL, verifica a existência de uma coluna em linhas de dados esparsos. Por exemplo, consulte as linhas em que o valor da coluna address não esteja vazio.
Para consultar colunas Nested, use a consulta aninhada (nested query).
Para verificar se uma coluna contém valores vazios, combine ExistsQuery com mustNotQueries de BoolQuery.
-
O sistema considera que uma coluna não existe nas seguintes condições. Este exemplo usa a coluna city.
Se o tipo da coluna city no índice de busca for básico (como keyword) e a linha na tabela de dados não tiver essa coluna, o índice de busca considerará que ela não existe.
Se o tipo da coluna city no índice de busca for básico (como keyword) e a linha na tabela de dados contiver um array vazio para essa coluna ("city" = "[]"), o índice de busca considerará que a coluna city não existe.
Operações de API
Chame a operação Search ou ParallelScan e defina o tipo de consulta como ExistsQuery para executar uma consulta Exists.
Parâmetros
|
Parâmetro |
Descrição |
|
fieldName |
Nome da coluna a ser consultada. |
|
query |
Tipo de consulta. Defina este parâmetro como ExistsQuery. |
|
getTotalCount |
Define se o número total de linhas correspondentes às condições da consulta deve ser retornado. O valor padrão é false, indicando que a contagem total não será retornada. Definir este parâmetro como true pode comprometer o desempenho da consulta. |
|
tableName |
Nome da tabela de dados. |
|
indexName |
Nome do índice de busca. |
|
columnsToGet |
Define se todas as colunas das linhas correspondentes devem ser retornadas. Configure os campos returnAll e columns para este parâmetro. O valor padrão do campo returnAll é false, indicando que nem todas as colunas serão retornadas. Nesse caso, use o campo columns para especificar quais colunas retornar. Sem essa especificação, apenas as colunas de chave primária serão retornadas. Se você definir o campo returnAll como true, todas as colunas serão retornadas. |
Métodos
Execute uma consulta Exists pelo console do Tablestore, pela CLI do Tablestore ou pelos SDKs do Tablestore. Antes de iniciar, certifique-se de cumprir os seguintes pré-requisitos:
-
Use uma conta Alibaba Cloud ou um usuário RAM com as permissões necessárias para operações no Table Store. Para conceder permissões a um usuário RAM, consulte Conceder permissões a um usuário RAM usando uma política RAM.
Caso utilize um SDK ou ferramenta de linha de comando, crie um AccessKey para sua conta Alibaba Cloud ou usuário RAM, caso ainda não possua um.
Você já criou uma tabela de dados.
Um Índice de Busca foi criado para a tabela de dados.
Se estiver usando um SDK, inicialize o Cliente Tablestore.
Ao utilizar a ferramenta de linha de comando, baixe-a e inicie-a, configure a conexão com sua instância e selecione a tabela de destino. Para mais informações, consulte Baixar a ferramenta de linha de comando, Iniciar a ferramenta e configurar informações de conexão e Operações de tabela de dados.
Faturamento
A consulta de dados por meio de um Índice de Busca consome throughput de leitura. Para mais informações, consulte Medição e faturamento do Índice de Busca.
Perguntas frequentes
Referências
O Índice de Busca suporta diversos tipos de consulta para buscas multidimensionais, incluindo consulta de termo, consulta de termos, consulta match all, consulta match, consulta phrase match, consulta de intervalo, consulta de prefixo, consulta de sufixo, consulta wildcard, consulta wildcard baseada em token, consulta booleana, consulta geográfica, consulta aninhada, busca vetorial e consulta Exists.
Durante a consulta de dados, é possível ordenar e paginar o conjunto de resultados ou aplicar colapsagem (deduplicação).
Para análises de dados, como encontrar valores máximos ou mínimos, calcular somas ou contar linhas, utilize os recursos de agregação estatística ou consulta SQL.
Para exportar dados rapidamente sem se preocupar com a ordem do conjunto de resultados, utilize o recurso Parallel Scan.