在sqlite中返回已删除的行

时间:2017-04-04 13:12:27

标签: sql sqlite

执行SELECT * FROM TABLE WHERE clauseDELETE * FROM TABLE WHERE clause等两个查询效率不高。

所以我想进行DELETE查询并返回已删除的行(一个查询)。

我试着这样做:

DELETE OUTPUT DELETED.*
FROM table
WHERE clause

但我有一个错误:

SQLite exception: near "OUTPUT": syntax error

如何正确使用或者还有另一种方法可以返回已删除的行?

1 个答案:

答案 0 :(得分:3)

DELETE statement没有OUTPUT子句。

执行SELECT后,所有重要数据都在缓存中,因此DELETE将快速运行。

因为SELECT + DELETE是唯一的方式,所以它是最有效的方式。