Xen*_*rey 2 mysql with-statement google-bigquery sql-delete
使用 BigQuery 我想删除 id 为Common Table Expression或 的行with
这是我的查询:
WITH
redundant AS (
SELECT
id,
MAX(updated_at) AS updated_at,
COUNT(*) AS counter
FROM
t1
GROUP BY
id
HAVING
counter >= 2)
DELETE
FROM
t1
WHERE
id IN (redundant.id)
AND updated_at NOT IN (redundant.updated_at )
Run Code Online (Sandbox Code Playgroud)
我预计这些行将被删除,但我收到此错误消息:
Syntax error: Expected "(" or keyword SELECT but got keyword DELETE at [13:1]
以下是 BigQuery 标准 SQL
#standardSQL
DELETE FROM `project.dataset.table` d
WHERE EXISTS (
WITH redundant AS (
SELECT id,
MAX(updated_at) AS updated_at,
COUNT(*) AS counter
FROM `project.dataset.table`
GROUP BY id
HAVING counter > 2
)
SELECT 1 FROM redundant
WHERE d.id = id AND d.updated_at != updated_at
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2276 次 |
| 最近记录: |