web-dev-qa-db-ja.com

PgAdmin IIIで複数選択の結果をどのように表示しますか?

select 1 as a,4 as b, 5 as c;
select 1 as a,3 as b;

`select 1 as a、3 as b;の結果表示のみ。

PgAdmin IIIで複数選択の結果をどのように表示しますか? `

1
D T

1つこの制限を回避する方法UNION ALL

ただし、すべてのSELECTsの-​​行タイプには一致する必要がありますがあります。そこで、2番目のクエリで欠落している列NULLcを追加しました。データ型に適合する任意の値にすることができます。

SELECT 1 AS a, 4 AS b, 5 AS c FROM tbl_a
UNION ALL
SELECT 1     , 3     , NULL   FROM tbl_b;  -- aliases only needed in 1st SELECT

single結果セットを返します。

各行のソースを示すために、個々のSELECTの間に列または行のスライドを追加できます。 VALUES式を使用して両方を同時に示します。

SELECT * FROM (
   VALUES
      (1, 1, 14, 15)
     ,(1, 2, 17, 11)
   ) AS t(query, a, b, c)

UNION ALL VALUES (NULL::int, NULL::int, NULL::int, NULL::int) -- delimiter

UNION ALL (
   VALUES
      (2, 3, 24, NULL::int)
     ,(2, 4, 27, NULL::int)
   );

明示的な型キャストが必要になる場合があります。ここでは絶対に必要なものだけを追加しました。 -> SQLfiddleデモ。

2