Utilice la consulta de término para encontrar las filas donde un campo específico coincide exactamente con una palabra clave. La palabra clave no se divide en tokens. En los campos TEXT, Tablestore divide el valor del campo en tokens y compara la palabra clave con cada uno de ellos; una fila cumple la condición si algún token coincide de forma exacta.
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 search indexes.
Parámetros
|
Parámetro |
Descripción |
|
FieldName |
El nombre del campo que se va a comparar. |
|
Term |
La palabra clave que se compara con los valores del campo. Esta palabra no se divide en tokens, sino que se compara tal cual con el valor completo del campo o, en los campos TEXT, con cada token. En los campos TEXT, Tablestore divide el valor del campo en tokens y comprueba si alguno coincide exactamente con la palabra clave. Por ejemplo, si un campo TEXT contiene "tablestore is cool", el valor se divide en los tokens "tablestore", "is" y "cool". Si especifica cualquiera de estos como palabra clave, se devuelve la fila. |
|
GetTotalCount |
Indica si se devuelve el número total de filas coincidentes. El valor predeterminado es |
|
Query |
El tipo de consulta. Establezca este parámetro en |
|
TableName |
El nombre de la tabla de datos. |
|
IndexName |
El nombre del índice de búsqueda. |
|
ColumnsToGet |
Especifica qué columnas se devuelven para las filas coincidentes. Configure De forma predeterminada,
Establezca |
Ejemplos
A continuación se muestra un ejemplo que consulta las filas donde el campo Keyword_type_col coincide exactamente con SearchIndex.
/// <summary>
/// Query rows where Keyword_type_col exactly matches "SearchIndex".
/// </summary>
/// <param name="otsClient"></param>
public static void TermQuery(OTSClient otsClient)
{
var searchQuery = new SearchQuery();
// Return the total number of matching rows.
searchQuery.GetTotalCount = true;
// Match rows where Keyword_type_col equals "SearchIndex".
searchQuery.Query = new TermQuery("Keyword_type_col", new ColumnValue("SearchIndex"));
var request = new SearchRequest(TableName, IndexName, searchQuery);
// Return all columns from the search index.
// To return specific columns: Columns = new List<string>() { Long_type_col, Text_type_col, Keyword_type_col }
// To return all columns from the data table: ReturnAll = true
request.ColumnsToGet = new ColumnsToGet()
{
ReturnAllFromIndex = true
};
var response = otsClient.Search(request);
// Check NextToken for paginated results.
}
Preguntas frecuentes
Referencias
-
Cuando utiliza un índice de búsqueda para consultar datos, puede emplear los siguientes métodos 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 y exists query. Según sus necesidades de negocio, combine distintos métodos para consultar datos desde múltiples dimensiones.
Las funciones de ordenación y paginación le permiten organizar las filas que cumplen las condiciones de la consulta. Para obtener más información, consulte Sorting and paging.
La función de colapso (distinct) reduce el conjunto de resultados con base en una columna específica. De esta manera, los datos del tipo indicado aparecen una sola vez en los resultados de la consulta. Para obtener más información, consulte Collapse (distinct).
Si necesita analizar los datos de una tabla, utilice la función de agregación de la operación Search o ejecute instrucciones SQL. Con estas herramientas obtiene valores mínimos y máximos, sumas y el número total de filas. Para obtener más información, consulte Aggregation y SQL query.
Para recuperar todas las filas que cumplen las condiciones sin necesidad de ordenarlas, llame a las operaciones ParallelScan y ComputeSplits mediante la función de escaneo paralelo. Para obtener más información, consulte Parallel scan.