小编典典

如何在SQLite上使用带有更新/删除功能的CTE?

sql

SQLite现在具有CTE,文档说明您可以将其与插入,更新和删除查询一起使用-
但仅提供了select语句的示例。

我可以通过insert-select找出CTE如何应用于插入。但是我们如何在没有从句的情况下在更新或删除中使用它们呢?


阅读 187

收藏
2021-04-22

共1个答案

小编典典

CTE可用于子查询中:

WITH NewNames(ID, Name) AS (...)
UPDATE MyTable
SET Name = (SELECT Name
            FROM NewNames
            WHERE ID = MyTable.ID);

WITH IDsToDelete AS (...)
DELETE FROM MyTable
WHERE ID IN IDsToDelete;
2021-04-22