Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从Access中的查询中减去列表_Sql_Ms Access_Ms Access 2010 - Fatal编程技术网

Sql 从Access中的查询中减去列表

Sql 从Access中的查询中减去列表,sql,ms-access,ms-access-2010,Sql,Ms Access,Ms Access 2010,我在名为Suche的主查询中有五个字段。让我们考虑字段的名称,作为A、B、C、D、E的简单演示。 A B C D E 1 a b d 2 m n o 3 t z 4 r m

我在名为Suche的主查询中有五个字段。让我们考虑字段的名称,作为A、B、C、D、E的简单演示。
A         B           C           D            E
1         a           b                        d
2         m           n           o            
3         t           z   
4         r           m           d            b
5         q           f           j          
SELECT (Suche.A-DUN.A-HOL.A) AS FINAL FROM Suche,DUN,HOL;
我从Suche查询中提取了两个查询。第一个查询称为DUN,它从Suche查询中提取以下内容

A         B           C           D            E
1         a           b                        d
第二个查询称为HOL,它从这样的查询中提取以下内容

A         B           C           D            E
3         t           z   
4         r           m           d            b
现在,我希望构建第三个查询,在这里我希望从Suche查询中找到剩余的未提取记录。我已经试着实现它了,就像这样

A         B           C           D            E
1         a           b                        d
2         m           n           o            
3         t           z   
4         r           m           d            b
5         q           f           j          
SELECT (Suche.A-DUN.A-HOL.A) AS FINAL FROM Suche,DUN,HOL;
但它似乎不起作用。有人能指导我如何做到这一点吗?

有一种方法不在或不存在。假设列A是唯一的,则可以执行以下操作:

select s.*
from (<Suche>) as s
where s.A not in (select d.a from (<DUN>) as d) and
      s.A not in (select h2.a from (<HOL>) as h2);
一种方法不在或不存在。假设列A是唯一的,则可以执行以下操作:

select s.*
from (<Suche>) as s
where s.A not in (select d.a from (<DUN>) as d) and
      s.A not in (select h2.a from (<HOL>) as h2);

如果我理解的话,你可以像这样使用减号运算符:

将表fin创建为 从suche中选择* 减 从dun中选择* 减 从hol中选择*


如果不需要创建表,则忽略创建表并直接使用子查询。

如果我理解,您可以像这样使用减号运算符:

将表fin创建为 从suche中选择* 减 从dun中选择* 减 从hol中选择*


如果不需要创建表,则忽略创建表并直接使用子查询。

SQL是一个通用选项卡,要求的特定版本是MS Access。MS Access不支持减号运算符。请看这里:和这里:。另一种方法是按照Gordon Linoff的建议使用NOT IN或NOT EXISTS。SQL是一个通用选项卡,要求的特定版本是MS Access。MS Access不支持减号运算符。请看这里:和这里:。另一种选择是按照Gordon Linoff的建议使用NOT IN或NOT EXISTS。我的错!知道了!谢谢,真糟糕!知道了!谢谢