![PgAdmin III 中如何显示多选的结果?](https://linux22.com/image/1371685/PgAdmin%20III%20%E4%B8%AD%E5%A6%82%E4%BD%95%E6%98%BE%E7%A4%BA%E5%A4%9A%E9%80%89%E7%9A%84%E7%BB%93%E6%9E%9C%EF%BC%9F.png)
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
一解决这个限制的方法将会UNION ALL
。
但是,那行类型全部SELECTs
有必须匹配。因此我在第二个查询中添加了NULL
缺失的列c
。可以是任何符合数据类型的值:
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
返回单身的结果集。
要指示每行的来源,您可以在各个 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演示。