Una consulta por prefijo permite buscar los datos cuyo prefijo coincide con el valor especificado. Si la columna que se usa para evaluar las condiciones de la consulta es de tipo TEXT, su valor se divide en tokens. Una fila cumple las condiciones cuando el valor tokenizado de la columna indicada contiene como mínimo un término con el prefijo especificado.
Requisitos previos
Se inicializó una instancia de OTSClient. Para más información, consulte Initialize an OTSClient instance.
Se creó una tabla de datos y se escribieron datos en ella. Para más información, consulte Create data tables y Write data.
Se creó un índice de búsqueda para la tabla de datos. Para más información, consulte Create search indexes.
Parámetros
|
Parámetro |
Descripción |
|
FieldName |
El nombre de la columna que desea consultar. |
|
Prefix |
El prefijo que se usa para comparar con el valor de la columna durante la consulta. Si la columna que evalúa las condiciones de la consulta es de tipo TEXT, su valor se divide en tokens. Una fila cumple las condiciones cuando el valor tokenizado de la columna indicada contiene como mínimo un término con el prefijo especificado. |
|
GetTotalCount |
Indica si se devuelve el número total de filas que cumplen las condiciones de la consulta. Valor predeterminado: false, lo que significa que no se devuelve dicho total. Si establece este parámetro en true, el rendimiento de la consulta disminuye. |
|
Query |
El tipo de consulta. Establezca este parámetro en PrefixQuery. |
|
TableName |
El nombre de la tabla de datos. |
|
IndexName |
El nombre del índice de búsqueda. |
|
ColumnsToGet |
Indica si se devuelven todas las columnas de las filas que cumplen las condiciones de la consulta. Puede especificar los parámetros ReturnAll, Columns y ReturnAllFromIndex. De forma predeterminada,
Establezca |
Ejemplo
A continuación se muestra un ejemplo de código para consultar las filas donde el valor de la columna Keyword_type_col contiene el prefijo "Search" dentro de una tabla.
/// <summary>
/// Query the rows in which the value of the Keyword_type_col column contains the "Search" prefix in a table.
/// </summary>
/// <param name="otsClient"></param>
public static void PrefixQuery(OTSClient otsClient)
{
var searchQuery = new SearchQuery();
// Set the query type to PrefixQuery, the column that you want to match to Keyword_type_col, and the prefix to "Search".
searchQuery.Query = new PrefixQuery("Keyword_type_col", "Search");
// Return the total number of rows that meet the query conditions.
searchQuery.GetTotalCount = true;
var request = new SearchRequest(TableName, IndexName, searchQuery);
// You can specify the ColumnsToGet parameter to return the columns that you specify, all columns in the rows that meet the query conditions, or all columns in the search index. If you do not specify this parameter, only the primary key columns are returned.
request.ColumnsToGet = new ColumnsToGet()
{
// Return all columns in the search index.
ReturnAllFromIndex = true
// Return the columns that you specify.
//Columns = new List<string>() { Long_type_col, Text_type_col, Keyword_type_col }
// Return all columns in the rows that meet the query conditions.
//ReturnAll = true
};
var response = otsClient.Search(request);
Console.WriteLine("Total Count:" + response.TotalCount); // Display the total number of rows that meet the query conditions instead of the number of returned rows.
}
Preguntas frecuentes
Referencias
-
Al consultar datos con un índice de búsqueda, puede usar 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 buscar datos desde múltiples dimensiones.
Las funciones de ordenación y paginación permiten organizar o dividir en páginas las filas que cumplen las condiciones de la consulta. Para más información, consulte Sorting and paging.
La función collapse (distinct) reduce el conjunto de resultados con base en una columna específica. De esta manera, los datos del tipo indicado aparecen solo una vez en los resultados de la consulta. Para más información, consulte Collapse (distinct).
Para analizar los datos de una tabla, utilice la función de agregación de la operación Search o ejecute sentencias SQL. Por ejemplo, puede obtener los valores mínimo y máximo, la suma y el número total de filas. Para más información, consulte Aggregation y SQL query.
Si necesita obtener todas las filas que cumplen las condiciones de la consulta sin ordenarlas, llame a las operaciones ParallelScan y ComputeSplits para usar la función de exploración paralela. Para más información, consulte Parallel scan.