Edmilson,

Essa consulta tem um grau de complexidade mais elevado que as consultas
normais.
Acredito que usando uma das opções abaixo você terá um código de mais fácil
manutenção
que resolver tudo isso em um só comando SQL.

Opções:
     1) Criar uma procedure que grave em tabela temporária o seu resultado e
depois
     fazer uma consulta nessa tabela.
     2) Fazer a consulta normalmente e iterar seu resultset montando o
resultado em um
     ClientDataSet e exibir os dados gravados no clientDataSet.

-- 
Saudações,

Zunga.

2006/7/10, Edmilson Pontes < [EMAIL PROTECTED]>:
>
> 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