gpt4 book ai didi

mysql - 在 BigQuery 中使用 `With` 然后使用 `Delete`

转载 作者:行者123 更新时间:2023-11-29 05:49:19 24 4
gpt4 key购买 nike

使用 BigQuery 我想删除在 Common Table Expressionwith 中具有 id 的行

这是我的查询:

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 )

我预计这些行将被删除,但我收到此错误消息:
语法错误:需要“(”或关键字 SELECT,但在 [13:1] 处得到关键字 DELETE

最佳答案

以下适用于 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
)

关于mysql - 在 BigQuery 中使用 `With` 然后使用 `Delete`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55913230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com