A consulta de termos assemelha-se à consulta de termo, mas aceita várias palavras-chave. O sistema retorna uma linha de dados se pelo menos uma das palavras-chave corresponder exatamente ao valor do campo. Essa consulta funciona de modo similar ao operador IN em instruções SQL.
Pré-requisitos
Inicialize uma instância OTSClient. Para mais informações, consulte Inicializar uma instância OTSClient.
Crie uma tabela de dados e grave dados nela. Para mais informações, consulte Criar tabelas de dados e Gravar dados.
Crie um índice de busca para a tabela de dados. Para mais informações, consulte Criar um índice de busca.
Parâmetros
|
Parâmetro |
Descrição |
|
tableName |
Nome da tabela de dados. |
|
indexName |
Nome do índice de busca. |
|
offset |
Posição inicial da consulta atual. |
|
limit |
Número máximo de linhas a retornar na consulta atual. Para obter apenas a contagem de linhas que atendem aos critérios de consulta, sem recuperar os dados, defina o parâmetro limit como 0. |
|
queryType |
Tipo da consulta. Para usar a consulta de termos, defina este parâmetro como TableStore.QueryType.TERMS_QUERY. |
|
fieldName |
Nome do campo a ser correspondido. |
|
terms |
Palavras-chave usadas para comparar com o valor do campo durante a consulta de termos. O sistema retorna uma linha de dados se pelo menos uma das palavras-chave corresponder exatamente ao valor do campo. |
|
getTotalCount |
Define se o total de linhas que atendem aos critérios de consulta será retornado. Valor padrão: false. Definir este parâmetro como true pode reduzir o desempenho da consulta. |
|
columnToGet |
Determina quais colunas retornar para cada linha que atenda aos critérios de consulta. Configure returnType e returnNames neste parâmetro.
|
Exemplos
O exemplo de código a seguir consulta linhas em que o valor da coluna Col_Keyword corresponde exatamente a "hangzhou" ou "shanghai":
/**
* Search the table for rows in which the value of the Col_Keyword column exactly matches "hangzhou" or "shanghai".
* TermsQuery supports multiple terms. You can retrieve query results that match at least one of the terms.
*/
client.search({
tableName: TABLE_NAME,
indexName: INDEX_NAME,
searchQuery: {
offset: 0,
limit: 10, // To query only the number of rows that meet the query conditions without specific data, set the limit parameter to 0.
query: { // Set the query type to TableStore.QueryType.TERMS_QUERY.
queryType: TableStore.QueryType.TERMS_QUERY,
query: {
fieldName: "Col_Keyword",
terms: ["hangzhou", "shanghai"]
}
},
getTotalCount: true // Specify whether to return the total number of rows that meet the query conditions. Default value: false.
},
columnToGet: { // Specify the columns that you want to return. You can set the parameter to RETURN_SPECIFIED to return the specified columns, RETURN_ALL to return all columns, RETURN_ALL_FROM_INDEX to return all columns in the search index, or RETURN_NONE to return only the primary key columns.
returnType: TableStore.ColumnReturnType.RETURN_ALL
}
}, function (err, data) {
if (err) {
console.log('error:', err);
return;
}
console.log('success:', JSON.stringify(data, null, 2));
});
Perguntas frequentes
Perguntas frequentes
Referências
-
Os índices de busca oferecem suporte aos seguintes tipos de consulta: consulta de termo, consulta de termos, consulta match all, consulta match, consulta match phrase, consulta de prefixo, consulta de intervalo, consulta curinga, consulta booleana, consulta geográfica, consulta aninhada, consulta vetorial e consulta exists. Selecione o tipo adequado conforme sua necessidade de negócio.
Para ordenar ou paginar as linhas que atendem aos critérios de consulta, use o recurso de classificação e paginação. Para mais informações, consulte Classificação e paginação.
Para agrupar resultados com base em uma coluna específica, use o recurso de colapso (distinct). Dessa forma, dados do tipo especificado aparecem apenas uma vez nos resultados da consulta. Para mais informações, consulte Colapso (distinct).
Para analisar dados em uma tabela de dados, como obter valores extremos, soma e número total de linhas, execute operações de agregação ou instruções SQL. Para mais informações, consulte Agregação e Consulta SQL.
Para obter rapidamente todas as linhas que atendem aos critérios de consulta sem precisar ordená-las, chame as operações ParallelScan e ComputeSplits para usar o recurso de varredura paralela. Para mais informações, consulte Varredura paralela.