La consulta de prefijo permite buscar datos que coincidan con un prefijo determinado. Si la columna utilizada para evaluar esta condición es de tipo TEXT, su contenido se divide en tokens. Una fila cumple las condiciones de la consulta cuando como mínimo uno de sus tokens contiene 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 a data table y Write data.
Se creó un índice de búsqueda para la tabla de datos. Para más información, consulte Create a search index.
Parámetros
|
Parámetro |
Descripción |
|
table_name |
El nombre de la tabla de datos. |
|
index_name |
El nombre del índice de búsqueda. |
|
offset |
La posición desde donde inicia la consulta actual. |
|
limit |
El número máximo de filas que debe devolver la consulta actual. Si solo necesita conocer cuántas filas cumplen las condiciones de la consulta, sin obtener sus datos específicos, establezca este parámetro en 0. |
|
get_total_count |
Indica si se devuelve el total de filas que cumplen las condiciones de la consulta. Valor predeterminado: false. Con el valor false no se devuelve dicho total. Si establece este parámetro en true, el rendimiento de la consulta disminuye. |
|
query_type |
El tipo de consulta. Para usar una consulta de prefijo, establezca este parámetro en |
|
field_name |
El nombre de la columna que desea consultar. |
|
prefix |
El prefijo. Si la columna utilizada para evaluar la condición de prefijo es de tipo TEXT, su contenido se divide en tokens. Una fila cumple las condiciones de la consulta cuando como mínimo uno de sus tokens contiene el prefijo especificado. |
|
sort |
El método utilizado para ordenar las filas de la respuesta. Para más información, consulte Sorting and paging. |
|
columns_to_get |
Indica si se devuelven todas las columnas de cada fila que cumple las condiciones de la consulta. Configure return_type y return_names para este parámetro.
|
Ejemplos
A continuación se muestra un ejemplo de código para consultar todas las filas cuya columna keyword contenga el prefijo "key" en una tabla de datos.
$request = array(
'table_name' => 'php_sdk_test',
'index_name' => 'php_sdk_test_search_index',
'search_query' => array(
'offset' => 0,
'limit' => 2,
'get_total_count' => true,
'query' => array(
'query_type' => QueryTypeConst::PREFIX_QUERY,
'query' => array(
'field_name' => 'keyword',
'prefix' => 'key'
)
),
'sort' => array(
array(
'field_sort' => array(
'field_name' => 'keyword',
'order' => SortOrderConst::SORT_ORDER_ASC
)
),
)
),
'columns_to_get' => array(
'return_type' => ColumnReturnTypeConst::RETURN_ALL,
'return_names' => array('keyword')
)
);
$response = $otsClient->search($request);
Preguntas frecuentes
Referencias
-
Al consultar datos mediante un índice de búsqueda, puede utilizar 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. Estos métodos le permiten buscar datos desde varios dimensiones según sus necesidades de negocio.
Si necesita ordenar o paginar las filas que cumplen las condiciones de la consulta, utilice la función de ordenamiento y paginación. Para más información, consulte Sorting and paging.
Para agrupar el conjunto de resultados a partir de una columna específica, utilice la función collapse (distinct). De este modo, los datos del tipo indicado aparecen una sola vez en los resultados de la consulta. Para más información, consulte Collapse (distinct).
Cuando requiera analizar los datos de una tabla, por ejemplo, para obtener valores extremos, sumas o el total de filas, ejecute operaciones de agregación o sentencias SQL. Para más información, consulte Aggregation y SQL query.
Si necesita obtener rápidamente todas las filas que cumplen las condiciones de la consulta sin ordenarlas, llame a las operaciones ParallelScan y ComputeSplits para aprovechar la función de escaneo paralelo. Para más información, consulte Parallel scan.