显示查询输出中包含“#Error”的行

时间:2012-03-09 16:19:51

标签: sql join ms-access-2007

我有一个正确的连接查询(加入表和另一个查询输出)。我在某些行中显示“#Error”。有没有办法只显示给出“#Error”的行?

这是我的问题:

SELECT Table1.Number1, Table2.Number2
FROM Table2 RIGHT JOIN Table1 ON Table2.Number2 = Table1.Number1;

示例数据:

Expr1   Expr2
2346    2346
2347    2347
2348    #Error
2349    2349
2350    2350
2351    2351

子查询:

SELECT Val(Right([String2],Len([String2])-8)) AS Number2
FROM Table3;

提前致谢

1 个答案:

答案 0 :(得分:1)

最后添加一个WHERE子句。应该工作正常。如果您有多个#ERROR行可能出现的列,请在其中使用带OR的WHERE子句(或者,也可以使用|| s)。如果你更清楚地了解哪些列中包含#ERRORs,我可以将它编组为一个代码块,但是你应该很容易为自己处理。

编辑:更正:

SELECT Table1.Number1
FROM Table1
WHERE Table1.Number1 NOT IN (
    SELECT Table2.Number2 FROM Table2
)

你得到的错误是因为你强迫table1出现,即使表2中没有任何内容可以匹配它。这会给你孤儿。

相关问题