/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

NameTypeDescription
table_namestringName 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.
expressionsarray of stringsA 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.
optionsmap of string to strings

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

Supported Parameters (keys)Parameter Description
global_expressionAn optional global expression to reduce the search space of the input parameter expressions. The default value is ''.
record_idA 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:

NameTypeDescription
statusString'OK' or 'ERROR'
messageStringEmpty if success or an error message
data_typeString'delete_records_response' or 'none' in case of an error
dataStringEmpty string
data_strJSON or String

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

NameTypeDescription
count_deletedlongTotal number of records deleted across all expressions.
counts_deletedarray of longsTotal number of records deleted per expression.
infomap of string to stringsAdditional information.

Empty string in case of an error.