---
cuppy_hub: salesforce
cuppy_path: reference/official/data360/data-cloud-query-guide/references/dc-sql-reference/delete.md
cuppy_section: docs
cuppy_doc: BE8T-PGYM
cuppy_doc_uuid: 83fdae53-2932-48fe-a19b-1a9a02a88da4
cuppy_permalink: https://cuppy.io/salesforce/d/BE8T-PGYM
cuppy_version: 1
cuppy_updated: 2026-10-23T16:16:52.575Z
cuppy_canonical: https://cuppy.io/salesforce/docs/reference/official/data360/data-cloud-query-guide/references/dc-sql-reference/delete
cuppy_mcp: https://cuppy.io/mcp
cuppy_body_sha256: e857a9900b44a8766119bfe338e1ae57465a284a3ddd37d30dd2bfb91a288168
# cuppy_body_sha256 is over the document body ALONE, excluding both generated blocks.
---

> Mirror of <https://developer.salesforce.com/docs/data/data-cloud-query-guide/references/dc-sql-reference/delete.html> (Salesforce, Data 360 Query Guide), read 2026-10-23. Salesforce's own page is the authority; this copy exists because that site refuses non-browser readers.

## DELETE

**Applies to:** ❌ Data 360 SQL ✅ Tableau Hyper API

Delete rows from a table.

`DELETE` deletes rows that satisfy the `WHERE` clause from the specified table. If the `WHERE` clause is absent, the effect is to delete all rows in the table. The result is a valid, but empty table.

There are two ways to delete rows in a table using information contained in other tables in the database: using sub-selects, or specifying additional tables in the `USING` clause. Which technique is more appropriate depends on the specific circumstances.

The optional `RETURNING` clause causes `DELETE` to compute and return value(s) based on each deleted row. Any expression using the table’s columns, and/or columns of other tables mentioned in the `USING` clause, can be computed. The syntax of the `RETURNING` list is identical to that of the output list of `SELECT`.

`<with_query>`
The `WITH` clause allows you to specify one or more subqueries that can be referenced by name in the `DELETE` query. See [SELECT](https://developer.salesforce.com/docs/data/data-cloud-query-guide/references/dc-sql-reference/select.html) for details.

`<table_name>`
The name (optionally schema-qualified) of the table to delete rows from.

`<alias>`
A substitute name for the target table. When an alias is provided, it completely hides the actual name of the table. For example, given `DELETE FROM foo AS f`, the remainder of the `DELETE` statement must refer to this table as `f` not `foo`.

`<using_list>`
A list of table expressions, allowing columns from other tables to appear in the `WHERE` condition. This is similar to the list of tables that can be specified in the [FROM](https://developer.salesforce.com/docs/data/data-cloud-query-guide/references/dc-sql-reference/select-from.html) clause of a `SELECT` statement; for example, an alias for the table name can be specified. Do not repeat the target table in the `<using_list>`, unless you wish to set up a self-join.

`<condition>`
An expression that returns a value of type `boolean`. Only rows for which this expression returns `true` will be deleted.

`<output_expression>`
An expression to be computed and returned by the `DELETE` command after each row is deleted. The expression can use any column names of the table named by `<table_name>` or table(s) listed in `USING`. Write `*` to return all columns.

`<output_name>`
A name to use for a returned column.

If the `DELETE` command contains a `RETURNING` clause, the result will be similar to that of a `SELECT` statement containing the columns and values defined in the `RETURNING` list, computed over the row(s) deleted by the command.

Hyper lets you reference columns of other tables in the `WHERE` condition by specifying the other tables in the `USING` clause. For example, to delete all films produced by a given producer, one can do:

What is essentially happening here is a join between films and producers, with all successfully joined films rows being marked for deletion. This syntax is not standard. A more standard way to do it is:

The query plans generated for both forms are equivalent. Thus, they do not differ in terms of performance.

Delete all films but musicals:

Clear the table `films`:

Delete completed tasks, returning full details of the deleted rows:

This command conforms to the SQL standard, except that the `USING` and `RETURNING` clauses are Hyper extensions (also available in PostgreSQL), as is the ability to use `WITH` with `DELETE`.


---
<!-- cuppy -->
You are reading one file. The same content is free over MCP at https://cuppy.io/mcp with no signup: ranked search across all 376 documents in this hub, the merged view when you work in a layer, known workarounds matched to the error you hit, and depth control so you spend tokens on what you need. Start with the `_hello` tool. How to connect: https://cuppy.io/salesforce/ Something wrong in this document? Report it with the `session feedback` tool on the same endpoint.
<!-- /cuppy -->
