Como mostra o resultado da seleção múltipla no PgAdmin III?

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

O resultado só exibe 'selecione 1 como a, 3 como b;

Como exibir o resultado da seleção múltipla no PgAdmin III? '

    
por D T 24.07.2013 / 05:19

1 resposta

2

Uma maneira de contornar essa limitação seria < strong> UNION ALL .

No entanto, o tipo de linha de todos os SELECTs tem que ter que corresponder . Então eu adicionei NULL para a coluna faltante c na segunda consulta. Pode ser qualquer valor que se ajuste ao tipo de dados:

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

Retorna um conjunto de resultados único .

Para indicar a origem de cada linha, você pode adicionar uma coluna ou slide em sequência entre SELECTs individuais. Demonstrando ambos de uma vez com expressões 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)
   );

Castings de tipo explícito podem ser necessários. Eu só adicionei o que é absolutamente necessário aqui. - > Demonstração SQLfiddle .

    
por 02.08.2013 / 00:33