Agrupar Tabelas
03/04/2008
0
Fala galera.... desculpem postar no lugar errado ... mas temos um grande problema relativo ao fluxo de usuários no fórum de SQL SERVER.. quando coloco algo lá... quase sempre não é respondido.. <_< ( e quando é.... demooooooora ).... acho que por falta de usuários naquela parte do forum...
por isso... solicito uma pequena mas urgente ajuda.... seguinte...
tenho uma query:
que me retorna uma tabela assim:
|CATEGORIA|SUBCATEGORIA|CONTEUDO|
1|____3_____|______5______|____2_____|
O problema é que preciso que retorne uma tabela assim:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
2|SUBCATEGORIA|_____5_____|
2|CONTEUDO____|_____2_____|
Então modifiquei o código dessa forma....
que me retorna 3 tabelas:
TABELA1:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
TABELA2:
|ITEM |QUANTIDADE|
1|SUBCATEGORIA|_____5_____|
TABELA3:
|ITEM |QUANTIDADE|
1|CONTEUDO____|_____2_____|
Como unir essas três tabelas para que fiquem assim:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
2|SUBCATEGORIA|_____5_____|
2|CONTEUDO____|_____2_____|
abraços.
Thiago
por isso... solicito uma pequena mas urgente ajuda.... seguinte...
tenho uma query:
SELECT CATEGORIA, SUBCATEGORIA, CONTEUDO FROM(SELECT (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_CATEGORIA WHERE FL_ID_CATEGORIA = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS CATEGORIA, (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_SUBCATEGORIA WHERE FL_ID_SUBCATEGORIA = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS SUBCATEGORIA, (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO WHERE FL_ID_CONTEUDO = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS CONTEUDO ) AS TABELA
que me retorna uma tabela assim:
|CATEGORIA|SUBCATEGORIA|CONTEUDO|
1|____3_____|______5______|____2_____|
O problema é que preciso que retorne uma tabela assim:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
2|SUBCATEGORIA|_____5_____|
2|CONTEUDO____|_____2_____|
Então modifiquei o código dessa forma....
SELECT ´CATEGORIA´ as ITEM, QUANTIDADE FROM(SELECT (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_CATEGORIA WHERE FL_ID_CATEGORIA = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE ) AS CATEGORIA SELECT ´SUBCATEGORIA´ as ITEM, * FROM(SELECT (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_SUBCATEGORIA WHERE FL_ID_SUBCATEGORIA = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE ) AS SUBCATEGORIA SELECT ´CONTEUDO´ as ITEM, * FROM(SELECT (SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO WHERE FL_ID_CONTEUDO = 0 AND (FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE ) AS CONTEUDO
que me retorna 3 tabelas:
TABELA1:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
TABELA2:
|ITEM |QUANTIDADE|
1|SUBCATEGORIA|_____5_____|
TABELA3:
|ITEM |QUANTIDADE|
1|CONTEUDO____|_____2_____|
Como unir essas três tabelas para que fiquem assim:
|ITEM |QUANTIDADE|
1|CATEGORIA ___|_____3_____|
2|SUBCATEGORIA|_____5_____|
2|CONTEUDO____|_____2_____|
abraços.
Thiago
Thiagos25
Curtir tópico
+ 0
Responder
Posts
04/04/2008
Groove
olá,
me esforcei pois naum sei nada de BD entaum chamei um amig o Bruno e ele me ajudou com seu caso,
fiz um teste com a tabela q tenho aqui mas acho q vc vai entender sem prob
bem simples pois naum sei muito de BD mas funcionou e ficou como vc queira.
:idea: **--Não esqueça de responder kaso tenha dado certo ou não!!!--** :idea:
me esforcei pois naum sei nada de BD entaum chamei um amig o Bruno e ele me ajudou com seu caso,
fiz um teste com a tabela q tenho aqui mas acho q vc vai entender sem prob
SELECT ´teste´, COUNT(*) AS teste FROM status_aplicacoes WHERE IDAPLICACAO = 1 union SELECT ´novoteste´ , COUNT(*) AS novoteste FROM status_aplicacoes WHERE IDSTATUS = 0 union SELECT ´outroteste´, COUNT(*) AS outroteste FROM status_aplicacoes WHERE OBS = ´´
bem simples pois naum sei muito de BD mas funcionou e ficou como vc queira.
:idea: **--Não esqueça de responder kaso tenha dado certo ou não!!!--** :idea:
Responder
04/04/2008
Ricardo Silva
Cara, te resolvo isso com Uma Palavra ´UNION´ (rsrsrsr)
serio
soh acrescentar UNION entre os Select e eles se uniram..
Detalhe elest tem que ter o mesmo numero de Colunas e mesmo nome de coluna
serio
SELECT ´CATEGORIA´ as ITEM, QUANTIDADE
FROM(SELECT
(SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_CATEGORIA WHERE
FL_ID_CATEGORIA = 0 AND
(FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE
) AS CATEGORIA
UNION
SELECT ´SUBCATEGORIA´ as ITEM, *
FROM(SELECT
(SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO_SUBCATEGORIA WHERE
FL_ID_SUBCATEGORIA = 0 AND
(FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE
) AS SUBCATEGORIA
UNION
SELECT ´CONTEUDO´ as ITEM, *
FROM(SELECT
(SELECT COUNT(*) AS QUANTIDADE FROM CONTEUDO WHERE
FL_ID_CONTEUDO = 0 AND
(FL_PENDENTE = 1 OR FL_EXCLUIR = 1 OR FL_NOVO = 1)) AS QUANTIDADE
) AS CONTEUDO
soh acrescentar UNION entre os Select e eles se uniram..
Detalhe elest tem que ter o mesmo numero de Colunas e mesmo nome de coluna
Responder
Clique aqui para fazer login e interagir na Comunidade :)