查询具有相同字段标题的查询 - MS Access

时间:2012-06-26 18:30:43

标签: sql ms-access join

我有一些查询(20+),它们都返回以下三列:

Building | Room | Other

所有这些都是文本字段。我想把所有这些问题都合并起来;所以我想看看查询整体返回的内容。

例如,如果我有一个查询SELECT Building, Room, Other FROM tblOne WHERE Room=10以及SELECT Building, Room, Other FROM tblOne WHERE Building=20,我该如何将这两者合并为一个?显然这是一个非常简单的例子,我的实际查询要复杂得多,所以把它们写成1个查询是不可行的。

我想输出上面的例子:

Building | Room | Other
```````````````````````
20       |  1   | Some Stuff
20       | 10   | Some More
5        | 10   | Some Other
15       | 10   | Some Extra
20       |  5   | Some Text

我尝试过的所有方法都提出了“建筑,房间和其他可以引用多个表格”的错误(也就是说它不希望将它们组合在一个标题下)。修复此问题的SQL语法是什么?

2 个答案:

答案 0 :(得分:2)

  SELECT Building, Room, Other FROM tblOne WHERE Room=10 
  UNION ALL
  SELECT Building, Room, Other FROM tblOne WHERE Building=20

答案 1 :(得分:0)

在UNION ALL&&和像这样的联盟

  

查询1

SELECT Building, Room, Other FROM tblOne WHERE Room=10 
UNION ALL
SELECT Building, Room, Other FROM tblOne WHERE Building=20
  

查询2

SELECT Building, Room, Other FROM tblOne WHERE Room=10 
UNION
SELECT Building, Room, Other FROM tblOne WHERE Building=20

注意

UNION运算符用于组合两个或多个SELECT语句的结果集。

UNION中的每个SELECT语句必须具有相同的列数。列还必须具有类似的数据类型。此外,每个SELECT语句中的列必须具有相同的顺序。

UNION运算符默认情况下仅选择不同的值。要允许重复值,请使用UNION ALL。