【发布时间】:2011-11-02 17:47:36
【问题描述】:
我尝试在 MS Access 中对两个表 CMVSC 和 TOXOSC 进行完全外连接,以检查两个/仅一个表中包含哪些 ID:
(SELECT * FROM CMVSC LEFT JOIN TOXOSC ON CMVSC.ID = TOXOSC.ID)
UNION
(SELECT * FROM TOXOSC LEFT JOIN CMVSC ON TOXOSC.ID = CMVSC.ID);
查询可以执行,但没有达到我的预期。
CMVSC 中的前几条记录(按 ID 升序排序)是:
ID CMV_NEGDATE CMV_POSDATE
10245 04.02.2010 28.06.1999
10642 08.10.1998 05.09.1991
TOXOSC 中的前几条记录(按 ID 升序排序)是:
ID TOXO_NEGDATE TOXO_POSDATE
10120 22.11.1993 05.04.1991
10261 09.02.1998 23.02.1996
以下是上述查询的前两条记录:
CMVSC.ID CMV_NEGDATE CMV_POSDATE TOXOSC.ID TOXO_NEGDATE TOXO_POSDATE
10120 22.11.1993 05.04.1991
10245 04.02.2010 28.06.1999
注意来自TOXOSC 的记录是如何分配给CMV* 变量的,就像来自CMVSC 的记录一样。
这怎么可能?
【问题讨论】:
标签: sql ms-access join outer-join