如何互相返回以下两个查询的结果

时间:2019-04-27 22:19:26

标签: sql excel select odbc firebird

我有以下查询:

SELECT GLACCOUNTS.ACCOUNT_NAME
FROM GLACCOUNTS GLACCOUNTS 
WHERE GLACCOUNTS.ACCOUNT = '61111'

返回以下结果:

enter image description here

然后我想在其下添加另一个字段,同样是通过查询。所以我做了以下;

SELECT
   GLACCOUNTS.ACCOUNT_NAME,
   (SELECT GLACCOUNTS.ACCOUNT_NAME 
    FROM GLACCOUNTS GLACCOUNTS
    WHERE GLACCOUNTS.ACCOUNT = '71111')
FROM
   GLACCOUNTS GLACCOUNTS
WHERE
   GLACCOUNTS.ACCOUNT = '61111'

然后返回以下内容:

enter image description here

我实际上希望食品COS显示在“客房收入”字段下方。有没有办法做到这一点:

enter image description here

我知道我的查询没有任何意义,因为我可以轻松地将结果作为查询的一部分。但是我需要了解在同一查询中相互之间添加数据的基本原理,因为我需要使用它来汇总更大的报表。

1 个答案:

答案 0 :(得分:3)

您要寻找的是UNION。 使用UNION,您可以将多个查询添加在一起,只要它们具有相同的列即可。

SELECT GLACCOUNTS.ACCOUNT_NAME FROM GLACCOUNTS GLACCOUNTS WHERE GLACCOUNTS.ACCOUNT = '61111'

UNION

SELECT GLACCOUNTS.ACCOUNT_NAME FROM GLACCOUNTS GLACCOUNTS WHERE GLACCOUNTS.ACCOUNT = '71111'

编辑: 您可以根据建议添加“ nikhil sugandh”,“硬编码”的附加标题行

SELECT GLACCOUNTS.ACCOUNT_NAME FROM GLACCOUNTS GLACCOUNTS WHERE GLACCOUNTS.ACCOUNT = '61111'

UNION

SELECT 'ACCOUNT_NAME_2' AS ACCOUNT_NAME

UNION

SELECT GLACCOUNTS.ACCOUNT_NAME FROM GLACCOUNTS GLACCOUNTS WHERE GLACCOUNTS.ACCOUNT = '71111'