Merge insert (upsert) records into a table
Performs a merge insert (upsert) operation on a table. This operation updates existing rows based on a matching column and inserts new rows that don't match. Returns the number of rows inserted and updated.
Path parameters
string identifier of an object in a namespace, following the Lance Namespace spec. When the value is equal to the delimiter, it represents the root namespace. For example, v1/namespace/./list performs a ListNamespace on the root namespace.
Query parameters
An opaque token that allows pagination for list APIs (e.g. ListNamespaces). For an initial client request for a list API, if the server cannot return all items in one response, or if there are more items than the pageSize specified in the client request, the server must return a nextPageToken in the response indicating there are more results available. After the initial request, the value of nextPageToken from each response must be used by the client as the pageToken parameter value for the next request. Clients must interpret either null, missing value or empty string value of nextPageToken from a server response as the end of the listing results.
An optional delimiter of the string identifier, following the Lance Namespace spec. When not specified, the . delimiter must be used.
Column name to use for matching rows (required)
Update all columns when rows match
The row is updated (similar to UpdateAll) only for rows where the SQL expression evaluates to true
Insert all columns when rows don't match
Delete all rows from target table that don't match a row in the source table
Delete rows from the target table if there is no match AND the SQL expression evaluates to true
Response
Result of merge insert operation
Example response
{
"num_inserted_rows": 0,
"num_updated_rows": 0,
"num_deleted_rows": 0,
"version": 0
}