Tente usar assim!

SELECT F.NOME,
(SELECT CASE WHEN P.MESCOMP = 1) AS JAN,
(SELECT CASE WHEN P.MESCOMP = 2) AS FEV,
(SELECT CASE WHEN P.MESCOMP = 3) AS MAR,
(SELECT CASE WHEN P.MESCOMP = 4) AS ABR,
(SELECT CASE WHEN P.MESCOMP = 5) AS MAI,
(SELECT CASE WHEN P.MESCOMP = 6) AS JUN,
(SELECT CASE WHEN P.MESCOMP = 7) AS JUL,
(SELECT CASE WHEN P.MESCOMP = 8) AS AGO,
(SELECT CASE WHEN P.MESCOMP = 9) AS SETE,
(SELECT CASE WHEN P.MESCOMP = 10) AS OUT,
(SELECT CASE WHEN P.MESCOMP = 11) AS NOV,
(SELECT CASE WHEN P.MESCOMP = 12) AS DEZ
FROM PFUNC F, PFFINANC P
WHERE F.CHAPA = P.CHAPA AND P.ANOCOMP = 2006 AND  P.CODEVENTO = 0156 GROUP BY 
CAMPO_QUE_VC_QUER_AGRUPAR


Abraços,


*Fernando dos Santos Sousa*

Edmilson Pontes escreveu:
> Colegas,
> Desculpem o off mas é que não estou conseguindo resover o problema:
>
> Tenho uma sentença que retorna o valor pago ao funcionário nos 12 meses do
> ano. A estrutura da tabela é tb.nome, tb.mes, tb.valor.
> Aí verifico se o mês no campo tb.mes é janeiro se for crio na consulta um
> campo Jan e coloco o conteudo do campo tb.valor.
> O problema é que está gerando uma linha para cada registro retornado, não
> estou conseguindo agrupar os registros.
> Fica mais ou menos assim:
> _______________________________
> NOME    JAN    FEV    MAR
> FULANO    100
> FULANO        100
> FULANO            100
>
> Como faço para agrupar? Segue abaixo a sentença usada.
>
> SELECT F.NOME,
> (SELECT CASE WHEN P.MESCOMP = 1) AS JAN,
> (SELECT CASE WHEN P.MESCOMP = 2) AS FEV,
> (SELECT CASE WHEN P.MESCOMP = 3) AS MAR,
> (SELECT CASE WHEN P.MESCOMP = 4) AS ABR,
> (SELECT CASE WHEN P.MESCOMP = 5) AS MAI,
> (SELECT CASE WHEN P.MESCOMP = 6) AS JUN,
> (SELECT CASE WHEN P.MESCOMP = 7) AS JUL,
> (SELECT CASE WHEN P.MESCOMP = 8) AS AGO,
> (SELECT CASE WHEN P.MESCOMP = 9) AS SETE,
> (SELECT CASE WHEN P.MESCOMP = 10) AS OUT,
> (SELECT CASE WHEN P.MESCOMP = 11) AS NOV,
> (SELECT CASE WHEN P.MESCOMP = 12) AS DEZ
> FROM PFUNC F, PFFINANC P
> WHERE F.CHAPA = P.CHAPA AND P.ANOCOMP = 2006 AND  P.CODEVENTO = 0156
>
>
> Desde já agredeço,
>
> Edmilson Pontes
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>   

-- 



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a