6
SQLite現在有CTE,documentation說你可以在插入,更新和刪除查詢時使用它 - 但只給出選擇語句的例子。如何在SQLite上使用更新/刪除的CTE?
我可以通過插入選擇找出CTE如何應用於插入;但是如何在更新或刪除中使用它們,哪裏沒有from-clause?
SQLite現在有CTE,documentation說你可以在插入,更新和刪除查詢時使用它 - 但只給出選擇語句的例子。如何在SQLite上使用更新/刪除的CTE?
我可以通過插入選擇找出CTE如何應用於插入;但是如何在更新或刪除中使用它們,哪裏沒有from-clause?
的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;