/delete/records

URL: http://<db.host>:<db.port>/delete/records

Deletes record(s) matching the provided criteria from the given table. The record selection criteria can either be one or more input parameter expressions (matching multiple records), a single record identified by record_id options, or all records when using delete_all_records. Note that the three selection criteria are mutually exclusive. This operation cannot be run on a view. The operation is synchronous meaning that a response will not be available until the request is completely processed and all the matching records are deleted.

Input Parameter Description

Name Type Description
table_name string Name of the table from which to delete records, in [schema_name.]table_name format, using standard name resolution rules. Must contain the name of an existing table; not applicable to views.
expressions array of strings A list of the actual predicates, one for each select; format should follow the guidelines provided here. Specifying one or more input parameter expressions is mutually exclusive to specifying record_id in the input parameter options.
options map of string to strings

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

Supported Parameters (keys) Parameter Description
global_expression An optional global expression to reduce the search space of the input parameter expressions. The default value is ''.
record_id A record ID identifying a single record, obtained at the time of insertion of the record or by calling /get/records/fromcollection with the return_record_ids option. This option cannot be used to delete records from replicated tables.
delete_all_records

If set to true, all records in the table will be deleted. If set to false, then the option is effectively ignored. The default value is false. 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 'delete_records_response' or 'none' in case of an error
data String Empty string
data_str JSON or String

This embedded JSON represents the result of the /delete/records endpoint:

Name Type Description
count_deleted long Total number of records deleted across all expressions.
counts_deleted array of longs Total number of records deleted per expression.
info map of string to strings Additional information.

Empty string in case of an error.