我有两个表,我想从表A中删除表B中的数据,请问我该怎么做?
答案 0 :(得分:0)
试试这个
Delete from TAble A WHERE EXISTS(
SELECT 1 from TABLE B WHERE B.ID=A.id)
答案 1 :(得分:0)
首先,这个网站不是免费的代码提供者。你必须提供你尝试过的东西,我们会帮助你。
其次,您需要在标记多种SQL语言的问题中明确说明您想要的内容。
要执行此操作,您可以使用以下两种技术: - 相关子查询和内部联接。
相关子查询
DELETE FROM tableA WHERE EXISTS (SELECT field FROM tableB WHERE tableB .field = tableA.field )
这适用于SQL SERVER(T-SQL),我也相信MySQL。
INNER JOINS - 我认为最有效
DELETE a
FROM TableA a
INNER JOIN TableB b
ON a.fieldA = b.fieldA
再次,适用于SQL Server,我也相信MySQL
您自己的一些进一步研究肯定会为您提供更详细的信息。
答案 2 :(得分:0)
您是否知道可以在DELETE语句中使用JOIN?
delete a
from TableA a
inner join TableB b on (a.id=b.id)