Inquiridor
Duvida sobre consulta.

Pergunta
-
Olá pessoal tudo bom,
Estou com um dúvida que não obtive solução ainda. Vamos a questão.
- Eu tenho 3 consultas e preciso que essas 3 fiquem armazenados dentro de uma coluna em outra tabela, quando o usuário salvar ou atualizar os registros.
as consultas que eu fiz foram essas:
Select t.Descricao , tm.Aliquota, Sum(tm.Valor) Valor
From ttrbmov tm, dtributo t
Where t.codcoligada = tm.codcoligada
And t.codtrb = tm.codtrb
And tm.codcoligada = 1
And tm.idmov = 88168
And tm.valor > 0
And tm.codtrb not in ('DEDINS', 'DEDTRF', 'INSS', 'COFINS', 'PIS', 'PISS', 'COFISS')
Group by t.Descricao, tm.Aliquota
Order by t.DescricaoSelect t.Descricao , tm.Valor
Select t.Descricao , tm.Aliquota, tm.valor
From ttrbmov tm, dtributo t
Where t.codcoligada = tm.codcoligada
And t.codtrb = tm.codtrb
And tm.codcoligada = 1
And tm.idmov = 88168
And tm.valor > 0
And tm.codtrb in ('DEDINS', 'DEDTRF')
Order by t.Descricao
From ttrbmov tm, dtributo t
Where t.codcoligada = tm.codcoligada
And t.codtrb = tm.codtrb
And tm.codcoligada = 1
And tm.idmov = 88168
And tm.valor > 0
And tm.codtrb = 'INSS'
Order by t.DescricaoComo eu faria pra armazenar as mesmas em uma coluna de outra tabela somente exibindo os resultado das 3 consultas?
Qual a melhor maneira de resolver este problema, se com function, trigger ou procedure. Sou estagiário em Banco de dados e ficou esse probleminha para eu resolver na empresa. Quem puder me ajudar ou pelo menos dar uma dica vai ajudar muito.
Obrigado a todos,
Att,
Luiz Antonio
- Editado Luiz_Santana terça-feira, 30 de julho de 2013 00:37
Todas as Respostas
-
Boa noite Luiz,
Precisa informar qual é a relação entre os campos
Exemplo usando inner join
SELECT column_name(s)
FROM table1
INNER JOIN table2 ON table1.column_name=table2.column_name;INNER JOIN table3 ON table1.column_name=table3.column_name;
-
-
Verifica se funciona!
Selct t.Descricao,
( Select tm.Aliquota
From ttrbmov tm Where t.codcoligada = tm.codcoligada And t.codtrb = tm.codtrb And tm.codcoligada = 1 And tm.idmov = 88168 And tm.valor > 0 And tm.codtrb not in ('DEDINS', 'DEDTRF', 'INSS', 'COFINS', 'PIS', 'PISS', 'COFISS') ) as aliquota, ( Select tm.Valor From ttrbmov tm Where t.codcoligada = tm.codcoligada And t.codtrb = tm.codtrb And tm.codcoligada = 1 And tm.idmov = 88168 And tm.valor > 0 And tm.codtrb in ('DEDINS', 'DEDTRF') ) as valor, ( Select tm.valor From ttrbmov tm Where t.codcoligada = tm.codcoligada And t.codtrb = tm.codtrb And tm.codcoligada = 1 And tm.idmov = 88168 And tm.valor > 0 And tm.codtrb = 'INSS' ) as valor_aliquota, from ttrbmov tm Order by t.Descricao, tm.Aliquota, tm.valor
- Sugerido como Resposta Carlos_rodrigues sábado, 3 de agosto de 2013 22:52
-
Outro jeito seria você criar uma view para cada estas consultas, depois usar elas com se fosse uma tabela usando inner join
- Sugerido como Resposta Carlos_rodrigues sábado, 3 de agosto de 2013 22:52
-