使用generate_series()删除行范围?

wlwcrazw  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(492)

为了更新表中的每一行,我使用这个查询(它正在工作):

我想知道我能不能用一个类似的符号来表示 DELETE ?
比如:

DELETE from test2
from generate_series(1, 1000) as idx
WHERE id = idx;

不会是第二个 FROM 当然是无效的。你知道怎么解决吗?
这种手术的最佳做法是什么?

xkrw2x1b

xkrw2x1b1#

使用 USING :

DELETE from test2 
       using generate_series(1, 1000) idx
       WHERE id = idx
n3schb8v

n3schb8v2#

这种手术的最佳做法是什么?
你可以用 generate_series() 就像戈登展示的那样。这甚至对非整数类型或增量小于等于1的类型也有意义。
对于简单的情况,简单查询更为优越,不过:

DELETE FROM test2 
WHERE  id BETWEEN 1 AND 1000;

相关问题