Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQLite中,如何删除一个表中与另一个表中的索引相对应的行_Sqlite - Fatal编程技术网

在SQLite中,如何删除一个表中与另一个表中的索引相对应的行

在SQLite中,如何删除一个表中与另一个表中的索引相对应的行,sqlite,Sqlite,我有两个表A和B。A包含全部数据。B仅包含应删除的索引。如何删除A中与B中具有相同索引的相应数据 比如说,, A是一个类似于: B是一个类似于: 我应该删除A中的行以及B中的所有(x,y)对 做一个像这样的例子: 在MySQL中(正如问题最初标记的那样),您可以使用join: delete a from a join b using (x, y); 在SQLite或几乎任何其他数据库中,您可以使用: delete from a

我有两个表A和B。A包含全部数据。B仅包含应删除的索引。如何删除A中与B中具有相同索引的相应数据

比如说,, A是一个类似于:

B是一个类似于:

我应该删除A中的行以及B中的所有(x,y)对 做一个像这样的例子:

在MySQL中(正如问题最初标记的那样),您可以使用
join

delete a
    from a join
         b
         using (x, y);
在SQLite或几乎任何其他数据库中,您可以使用:

delete 
    from a
    where exists (select 1 from b where b.x = a.x and b.y = a.y)

谢谢大家。我已经找到了一个解决方案,在这个问题上,下面的一些方法对我有效

DELETE FROM a       
WHERE EXISTS (SELECT *
              FROM b
              WHERE b.x = a.x and b.y = a.y)

请根据下面的评论中提到的错误发布您尝试过的内容,我更改了“a”附近的数据库标记。(sqlite3.OperationalError):语法错误一些类似的错误MySQL中的语法很好:。你的错误是一个SQLite错误,所以你把你的问题打错了标签。哦,我明白了。谢谢。你知道如何在SQLite中做到这一点吗?这是Gordon的答案。你为什么把它贴成你的?也许我没有刷新页面。不管怎样,我是在别的地方找到的。这有关系吗?这是我的问题,我刚刚发布了最终帮助我解决这个问题的答案。阅读:这样你就知道这里的事情是如何运作的。好的。这是我第一次使用堆栈溢出。我不知道这些规则。