Agrupar Tabelas
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
Curtidas 0
Respostas
Groove
03/04/2008
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:
GOSTEI 0
Ricardo Silva
03/04/2008
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
GOSTEI 0