表A 名称, 地址, ... 项目1, 项目2, ... Item10
表B 产品ID
我想运行一个SQL语句(在访问中)选择所有记录,其中任何项目([Item1] - [Item10])与表B中[ProductID]中找到的产品代码不匹配。我正在尝试在将其导出到我们的库存软件之前捕获文件中的所有错误,它无法找到该项目,我们必须重新开始。
我一直试图让LEFT JOIN工作,但没有成功。
答案 0 :(得分:1)
对于[TableA] ......
ID Name Item1 Item2 Item3
-- ----- -------- -------- --------
1 Name1 Product1 Product2 Product3
2 Name2 Product2
3 Name3 Product1 Product4
4 Name4 Product1 Produtc2 Product3
......和[表B] ......
ProductID
---------
Product1
Product2
Product3
...查询...
SELECT * FROM TableA
WHERE IIf(IsNull(Item1), False, DCount("*", "TableB", "ProductID='" & Item1 & "'") = 0)
Or IIf(IsNull(Item2), False, DCount("*", "TableB", "ProductID='" & Item2 & "'") = 0)
Or IIf(IsNull(Item3), False, DCount("*", "TableB", "ProductID='" & Item3 & "'") = 0)
...生产:
ID Name Item1 Item2 Item3
-- ----- -------- -------- --------
3 Name3 Product1 Product4
4 Name4 Product1 Produtc2 Product3