Filters objects in one table based on objects in another table. The user must specify matching column types from the two tables (i.e. the target table from which objects will be filtered and the source table based on which the filter will be created); the column names need not be the same. If a input parameter view_name is specified, then the filtered objects will then be put in a newly created view. The operation is synchronous, meaning that a response will not be returned until all objects are fully available in the result view. The return value contains the count (i.e. the size) of the resulting view.
Parameters
Name of the table whose data will be filtered, in [schema_name.]table_name format, using standard name resolution rules. Must be an existing table.
If provided, then this will be the name of the view containing the results, in [schema_name.]view_name format, using standard name resolution rules and meeting table naming criteria. Must not be an already existing table or view. The default value is ‘’.
Name of the column by whose value the data will be filtered from the table designated by input parameter table_name.
Name of the table whose data will be compared against in the table called input parameter table_name, in [schema_name.]table_name format, using standard name resolution rules. Must be an existing table.
Name of the column in the input parameter source_table_name whose values will be used as the filter for table input parameter table_name. Must be a geospatial geometry column if in ‘spatial’ mode; otherwise, Must match the type of the input parameter column_name.
Optional parameters. Allowed keys are:
create_temp_table – If true, a unique temporary table name will be generated in the sys_temp schema and used in place of input parameter view_name. This is always allowed even if the caller does not have permission to create tables. The generated name is returned in qualified_view_name. Allowed values are:
true
false
The default value is ‘false’.
collection_name – [DEPRECATED–please specify the containing schema for the view as part of input parameter view_name and use
GPUdb.create_schema()to create the schema if non-existent] Name of a schema for the newly created view. If the schema is non-existent, it will be automatically created.filter_mode – String indicating the filter mode, either in_table or not_in_table. Allowed values are:
in_table
not_in_table
The default value is ‘in_table’.
mode – Mode - should be either spatial or normal. Allowed values are:
normal
spatial
The default value is ‘normal’.
buffer – Buffer size, in meters. Only relevant for spatial mode. The default value is ‘0’.
buffer_method – Method used to buffer polygons. Only relevant for spatial mode. Allowed values are:
normal
geos – Use geos 1 edge per corner algorithm.
The default value is ‘normal’.
max_partition_size – Maximum number of points in a partition. Only relevant for spatial mode. The default value is ‘0’.
max_partition_score – Maximum number of points * edges in a partition. Only relevant for spatial mode. The default value is ‘8000000’.
x_column_name – Name of column containing x value of point being filtered in spatial mode. The default value is ‘x’.
y_column_name – Name of column containing y value of point being filtered in spatial mode. The default value is ‘y’.
The default value is an empty dict ( ).
Returns
A dict with the following entries–
The number of records in input parameter table_name that have input parameter column_name values matching input parameter source_table_column_name values in input parameter source_table_name.
Additional information. Allowed keys are:
qualified_view_name – The fully qualified name of the view (i.e. including the schema).
The default value is an empty dict ( ).