0

我有两个带有“字段名称”列的表。某些表 B 字段名称与表 A 字段名称相同。如果是这种情况,我想从组合框中排除那些,所以我没有双精度(在这种情况下我只想要表 A 字段名称)。我还需要组合框中的 ID(每个表唯一)。

我似乎想不出正确的 SQL 逻辑。现在,我正在尝试以下

SELECT [fldID], [fldName] FROM OISInfo UNION 
(SELECT [ID], [Field Name] FROM FldDef 
LEFT JOIN OISInfo ON [Field Name] = [fldName] WHERE [fldName] IS NULL)

但 Access 一直告诉我不支持连接表达式(在括号中的部分)。表名绝对正确。

我究竟做错了什么?

4

2 回答 2

0

联盟负责双打,这就是你所要做的

SELECT [fldID], [fldName] FROM OISInfo
UNION
SELECT [ID], [Field Name] FROM FldDef
于 2013-06-27T15:43:38.233 回答
0

经过测试。完美运行。表 5 是您的表 A 或者可能是 OISInfo。表 6 是您的表 B (FldDef)

 SELECT Table5.ID, Table5.Field1
 FROM Table5
 UNION
 SELECT Table6.ID, Table6.Field1
 FROM Table6 LEFT JOIN Table5 ON Table6.[Field1] = Table5.[Field1]
 WHERE (((Table5.Field1) Is Null));
于 2013-06-28T02:10:03.507 回答