【发布时间】:2013-08-22 04:20:27
【问题描述】:
如何从表中删除不匹配的行?我有两个包含大多数相关记录的表。 A表必须存在于B表中。如果A表中不存在B表记录,则删除B表记录。
我希望有一种方法可以通过查询而不是编码来填充数据表并通过每个记录进行交互以查看是否有匹配项。
表A
keyID, 外国身份证, 文字
表B
keyID, 记录ID, 文字
foriegnID 和recordID 是相关字段。这些表不是我设计的。
像这样的……
DELETE * FROM TableB WHERE (SELECT [foreignID] FROM TableA) <> recordID;
更新:我可以通过查询检索需要删除的记录,但我只想删除它们。
SELECT * FROM TableA LEFT JOIN TableB ON TableA.[foreignID] = TableB.[recordID] WHERE (((TableB.recordID) Is Null));
我正在使用vb.net处理一系列Access数据库。
【问题讨论】:
-
请给我们展示表结构的例子,如果您不想共享信息,可以添加一些虚拟数据。您的问题没有包含足够的说明,无法让任何人回答您。你也想问一下吗?
-
access 有一个内置的“查找悬空记录”选项可以为您执行此操作...
标签: vb.net ms-access ms-access-2010