Una consulta de términos es similar a una consulta de término, pero admite varias palabras clave. Se devuelve una fila de datos si al menos una de las palabras clave coincide exactamente con el valor del campo. Las consultas de términos funcionan de manera equivalente al operador IN en las instrucciones SQL.
Requisitos previos
Se inicializó una instancia de OTSClient. Para obtener más información, consulte Initialize an OTSClient instance.
Se creó una tabla de datos y se escribieron datos en ella. Para obtener más información, consulte Create data tables y Write data.
Se creó un índice de búsqueda para la tabla de datos. Para obtener más información, consulte Create a search index.
Parámetros
|
Parámetro |
Descripción |
|
tableName |
Nombre de la tabla de datos. |
|
indexName |
Nombre del índice de búsqueda. |
|
offset |
Posición desde la cual comienza la consulta actual. |
|
limit |
Número máximo de filas que debe devolver la consulta actual. Para consultar únicamente la cantidad de filas que cumplen las condiciones sin recuperar datos específicos, establezca el parámetro limit en 0. |
|
queryType |
Tipo de consulta. Para usar una consulta de términos, establezca este parámetro en TableStore.QueryType.TERMS_QUERY. |
|
fieldName |
Nombre del campo que desea coincidir. |
|
terms |
Palabras clave utilizadas para coincidir con el valor del campo al ejecutar una consulta de términos. Se devuelve una fila de datos si al menos una de las palabras clave coincide exactamente con el valor del campo. |
|
getTotalCount |
Especifica si se debe devolver el número total de filas que cumplen las condiciones de la consulta. Valor predeterminado: false. Si establece este parámetro en true, el rendimiento de la consulta se ve afectado. |
|
columnToGet |
Especifica si se deben devolver todas las columnas de cada fila que cumpla las condiciones de la consulta. Puede configurar returnType y returnNames para este parámetro.
|
Ejemplos
A continuación se muestra un código de ejemplo para consultar las filas donde el valor de la columna Col_Keyword coincide exactamente con "hangzhou" o "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));
});
Preguntas frecuentes
Preguntas frecuentes
Referencias
-
Los índices de búsqueda admiten los siguientes tipos de consulta: term query, terms query, match all query, match query, match phrase query, prefix query, range query, wildcard query, Boolean query, geo query, nested query, vector query y exists query. Seleccione el tipo de consulta adecuado según sus requisitos empresariales.
Si necesita ordenar o paginar las filas que cumplen las condiciones de la consulta, utilice la función de ordenamiento y paginación. Para obtener más información, consulte Sorting and paging.
Para agrupar el conjunto de resultados según una columna específica, utilice la función de colapso (distinct). De esta forma, los datos del tipo especificado aparecen solo una vez en los resultados de la consulta. Para obtener más información, consulte Collapse (distinct).
Si desea analizar datos en una tabla de datos, como obtener valores extremos, sumas o el número total de filas, ejecute operaciones de agregación o instrucciones SQL. Para obtener más información, consulte Aggregation y SQL query.
Para obtener rápidamente todas las filas que cumplen las condiciones de la consulta sin necesidad de ordenarlas, llame a las operaciones ParallelScan y ComputeSplits para utilizar la función de escaneo paralelo. Para obtener más información, consulte Parallel scan.