Jump to content
Nuno_Martins

Dúvida ao obter multiplas colunas numa query

Recommended Posts

Nuno_Martins

Olá pessoal,

Tenho a seguinte dúvida:

Preciso de fazer uma query que me apresente 2 colunas em que em cada uma dessas colunas aparece por exemplo "Grupo 1", "Grupo 2" e depois mostra em cada coluna o resultado de um count.

Então tentei fazer o seguinte:

SELECT COUNT(*) AS 'Grupo 1'
FROM tabela
WHERE GETDATE() > DATEADD(m, 7, tabela.data)
UNION
SELECT COUNT(*) AS 'Grupo 2'
FROM tabela
WHERE GETDATE() > DATEADD(m, 12, tabela.data)

Só que com esta solução o que eu obtenho é apenas uma coluna em que aparece "Grupo 1" e depois duas linhas com os valores respectivos (já pesquisei e vi que o UNION funciona assim). Mas eu precisava era de obter 2 colunas, com uma única linha a mostrar o resultado do count.

Alguém que me possa dar uma ideia de como resolver esta situação?

Obrigado desde já.

Share this post


Link to post
Share on other sites
Caça

Tenta assim

SELECT Grupo_1, Grupo_2
FROM(
SELECT COUNT(*) AS 'Grupo_1'
FROM tabela
WHERE GETDATE() > DATEADD(m, 7, tabela.DATA)) AS A,
(
SELECT COUNT(*) AS 'Grupo_2'
FROM tabela
WHERE GETDATE() > DATEADD(m, 12, tabela.DATA)) AS B


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
Nuno_Martins

Muito obrigado, era mesmo assim que pretendia  :)

No entanto fiquei com umas dúvidas...

Será que me podias explicar o significado de ter Grupo_1, Grupo_2 no SELECT? Não estou familiarizado com esta situação... não deveria ser colocado o campo da tabela?

A parte do AS A e AS B serve para distinguir as duas sub-queries?

Há possibilidade de eu colocar a aparecer no nome da tabela "Grupo 1" em vez de "Grupo_1"?

Share this post


Link to post
Share on other sites
Caça

No fundo, esse A e B é como se fossem duas tabelas normais que neste caso só tinha um registo cada(porque estás a fazer o count) e só tinham uma coluna cada(Grupo_1 e Grupo_2), dai chamar Grupo_1 e Grupo_2 no select em que Grupo_1 é como se fosse uma coluna da tabela A e Grupo_2 é como se fosse uma coluna da tabela B.


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.