SQL在select语句中组合两个表

时间:2014-09-05 20:27:47

标签: sql join access-vba ms-access-2010 union

我有一种情况,我想在select语句中组合两个表进行查询,但我还没有找到可行的解决方案。

情况: 表A. 表B

A和B都有相同的字段,但人口不同。我还有其他查询分别从每个表中提取。

我想构建一个从它们中获取的查询,就像它们是一个表一样。两个表中都没有记录实例。

到目前为止,我的研究让我觉得FULL OUTER JOIN是我想要的,但是当我没有真正加入 任何领域时,我并不完全确定如何做到这一点。它在我的测试中失败了。所以我搜索了附加选项思考,可能更准确地表示我正在尝试做什么,INSERT INTO看起来很有前景,但对于select语句则不那么好。有没有办法做到这一点,还是我需要创建第三个表,它是前两个要查询的组合?

这是通过DAO进行Access的Excel VBA查询。我正在基于用户选择的选项在我的VBA代码中逐个构建SQL语句,然后将结果拉入Excel以供使用。因此,我希望能够只改变FROM语句(因为我正在逐步构建查询)来实现这一点,以便select语句的任何其他方面不会受到影响。任何建议或帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

您可以UNION表格执行此操作:

SELECT StuffYouWant
FROM (SELECT *
      FROM TableA
      UNION  ALL
      SELECT *
      FROM TableB) c

答案 1 :(得分:0)

这样的事情:

SELECT * FROM a
UNION
SELECT * FROM b

确保a表和b表具有相同的列数,并且相应的列具有相同的数据类型