Version:

/filter/bystring

URL: http://GPUDB_IP_ADDRESS:GPUDB_PORT/filter/bystring

Calculates which objects from a table, collection, or view match a string expression for the given string columns. The options 'case_sensitive' can be used to modify the behavior for all modes except 'search'. For 'search' mode details and limitations, see Full Text Search.

Input Parameter Description

Name Type Description
table_name string Name of the table on which the filter operation will be performed. Must be an existing table, collection or view.
view_name string If provided, then this will be the name of the view containing the results. Has the same naming restrictions as tables. The default value is ''.
expression string The expression with which to filter the table.
mode string

The string filtering mode to apply. See below for details.

Supported Values Description
search Full text search query with wildcards and boolean operators. Note that for this mode, no column can be specified in input parameter column_names; all string columns of the table that have text search enabled will be searched.
equals Exact whole-string match (accelerated).
contains Partial substring match (not accelerated). If the column is a string type (non-charN) and the number of records is too large, it will return 0.
starts_with Strings that start with the given expression (not accelerated). If the column is a string type (non-charN) and the number of records is too large, it will return 0.
regex Full regular expression search (not accelerated). If the column is a string type (non-charN) and the number of records is too large, it will return 0.
column_names array of strings List of columns on which to apply the filter. Ignored for 'search' mode.
options map of string to strings

Optional parameters. The default value is an empty map ( {} ).

Supported Parameters (keys) Parameter Description
collection_name Name of a collection which is to contain the newly created view. If the collection provided is non-existent, the collection will be automatically created. If empty, then the newly created view will be top-level.
case_sensitive

If 'false' then string filtering will ignore case. Does not apply to 'search' mode. The supported values are:

  • true
  • false

Output Parameter Description

The GPUdb server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query. Here is a description of the various fields of the wrapper:

Name Type Description
status String 'OK' or 'ERROR'
message String Empty if success or an error message
data_type String 'filter_by_string_request' or 'none' in case of an error
data String Empty string
data_str JSON or String

This embedded JSON represents the result of the /filter/bystring endpoint:

Name Type Description
count long The number of records that passed the string filter.

Empty string in case of an error.