如何在sqlite中删除包含主键列表的行
在SQL中:如何在sqlite中删除包含主键列表的行,sqlite,delete-row,Sqlite,Delete Row,在SQL中: sqlite中的类似语法是什么?由于sqlite似乎不支持成对查询中的,因此您可以做的最直接和可读的查询可能是(为了可读性而添加括号) 一种可能性是使用关联查询: DELETE FROM table WHERE (pk1='1' AND pk2=2) OR (pk1='2' AND pk2=3) 如果用户必须删除数千行怎么办?@saimadan则需要添加更多对。与在或多个和或条件中使用相同。无论如何,他也许可以用BETWEEN/>/ DELETE FROM table WHERE
sqlite
中的类似语法是什么?由于sqlite似乎不支持成对查询中的,因此您可以做的最直接和可读的查询可能是(为了可读性而添加括号)
一种可能性是使用关联查询:
DELETE FROM table WHERE (pk1='1' AND pk2=2) OR (pk1='2' AND pk2=3)
如果用户必须删除数千行怎么办?@saimadan则需要添加更多对。与在
或多个和或条件中使用相同。无论如何,他也许可以用BETWEEN/>/
DELETE FROM table WHERE (pk1='1' AND pk2=2) OR (pk1='2' AND pk2=3)
WITH cte(p1, p2) AS(
VALUES ('1',2)
UNION ALL VALUES ('2', 3)) -- add more pairs if needed
DELETE FROM tab
WHERE EXISTS (SELECT 1 FROM cte WHERE pk1 = p1 AND pk2 = p2);