22/09/2004

Duvidas com SELECT

Eu quero selecionar a soma de uma coluna, mas ela teria q aparecer varias vezes dependendo do tipo de hora

Ex:
Funcionario [color=darkred:573253b18a]Hora Normal [/color:573253b18a][color=blue:573253b18a]Hora Extra [/color:573253b18a][color=green:573253b18a]Hora Adicional [/color:573253b18a]

João da Silva [color=darkred:573253b18a]150,00 [/color:573253b18a][color=blue:573253b18a]225,35 [/color:573253b18a][color=green:573253b18a]50,52 [/color:573253b18a]

Esse select funciona somente para 1 tipo de hora. Tem como fazer para aparecer os outros tipos de hora também?

[b:573253b18a][i:573253b18a][color=red:573253b18a]select sum(HORTOTAL) from cadservicosccapont where idcadtiphoras = ´Hora Normal´[/color:573253b18a][/i:573253b18a][/b:573253b18a]


Blbacelar

Respostas

22/09/2004

Djjunior

Dependendo do banco que vc usa vc poderia usar recursos do próprio sgdb como
decode (oracle) ou Case (sql server)

mas um jeito genérico de fazer seria :

select *
from
(select codFunc, sum(HORTOTAL)
from cadservicosccapont
group by codfunc
where idcadtiphoras = ´Hora Normal´) n,

(select codFunc, sum(HORTOTAL)
from cadservicosccapont
group by codfunc
where idcadtiphoras = ´Hora extra´) e,

(select codFunc, sum(HORTOTAL)
from cadservicosccapont
group by codfunc
where idcadtiphoras = ´Hora adicional´) as a

where a.codfunc = e.codfunc and
e.codfunc = n.codfunc

se


Responder Citar