Sim, vc fez errado!

Vc colorou o campo VALOR no group by.
É por isso que aparecem dois valores diferentes pro mesmo produto - foi vc
mesmo que mandou que ficasse assim.

Eu já imaginei que tivesse esse erro, por isso coloquei aquele comentário.

Se vc quer apenas da data mais recente, mande agrupas apenas pelo produto,
daí pegue a data mais recente usando o MAX, e por fim pegue o valor do
produto naquela data.





2012/5/23 Bruno Banfi <bruno.ba...@yahoo.com.br>

> **
>
>
> Milton,
>
> Veja que no resultado aparece dois valores para o mesmo produto mas com
> datas diferentes:
>
>
> > 2011-09-28                        2                              0.65
> > 2012-05-16                        2                              0.69
>
> Na minha consulta precisa aparecer o valor do produto com a data mais
> recente. Nesse caso acima era para aparecer somente:
>
> 2012-05-16                        2                              0.69
>
> Não deu certo o que o Rafael sugeriu. Vou revisar para ver se estou
> fazendo alguma coisa errada.
>
> Obrigado pelo retorno.
>
> Bruno
>
> ________________________________
> De: Milton Bastos Henriquis Jr. <miltonbas...@gmail.com>
> Para: oracle_br@yahoogrupos.com.br
> Enviadas: Quarta-feira, 23 de Maio de 2012 15:27
> Assunto: Re: [oracle_br] Help no Script
>
>
> Sobre a sugestão do Rafael, importante lembrar que:
> Se for usar rownum, tem que usar subselect também.
>
> Bruno: tenho quase certeza que vc não explicou corretamente o que vc
> realmente deseja.
>
> Essa query que vc passou, ela está CORRETA e vc deseja extrair essa
> informação dela?
> Ou ela está ERRADA e vc deseja corrigi-la?
>
> Se ela estiver correta, pra extrair exatamente o que vc descreveu, é
> fácil...
> Sem fazer muita alteração e usando a dica do Rafael:
>
> Select DATA_ENTRADA, EST_CUST_UND
> from (
> SELECT MAX(I.EST_DATA_ENTRADA) DATA_ENTRADA, I.EST_FK_EPI,I.EST_CUST_UND
> from ESTOQUE as I, EPI as H
> INNER JOIN ESTOQUE ON EST_FK_EPI = H.EPI_ID
> Group by I.EST_FK_EPI, I.EST_CUST_UND
> order by MAX(I.EST_DATA_ENTRADA))
> where rownum = 1;
>
> Mas tenho o leve pressentimento que não é isso que vc quer... que talvez vc
> queira refazer
> a query, mudar esse agrupamento, mas nesse caso só dá pra te ajudar se vc
> realmente explicar melhor.
>
> 2012/5/23 Rafael Vieira <vieira.rafae...@yahoo.com.br>
>
> > **
>
> >
> >
> > Tenta colocar a cláusula having fazendo uma condição data = max(data), pq
> > o having aceita um filtro com agrupamento, ou então, faria uma
> "gamb",order
> > by data desc  e colocaria um rownum = 1
> >
> > ________________________________
> > De: Bruno Banfi <bruno.ba...@yahoo.com.br>
> > Para: "oracle_br@yahoogrupos.com.br" <oracle_br@yahoogrupos.com.br>
> > Enviadas: Quarta-feira, 23 de Maio de 2012 14:56
> > Assunto: [oracle_br] Help no Script
> >
> >
> >
> > Boa tarde a todos,
> >
> > Tenho o seguinte script:
> >
> > SELECT MAX(I.EST_DATA_ENTRADA) as 'DATA_ENTRADA',
> > I.EST_FK_EPI,I.EST_CUST_UND
> >            from ESTOQUE as I, EPI as H
> >            INNER JOIN ESTOQUE ON EST_FK_EPI = H.EPI_ID
> >            Group by I.EST_FK_EPI, I.EST_CUST_UND
> >            ORDER BY I.EST_FK_EPI
> >
> > Que da o seguinte resultado:
> >
> > EST_DATA_ENTRADA        EST_FK_EPI        EST_CUST_UND
> > 2012-03-28                        NULL                      23.00
> > 2011-09-28                        2                              0.65
> > 2012-05-16                        2                              0.69
> > 2012-05-16                        4                              1.55
> > 2011-09-28                        59                            3.05
> > 2011-10-27                        77                            3.75
> > 2012-02-17                        77                            3.05
> > 2011-09-30                        79                            2.25
> > 2012-02-17                        97                            2.25
> > 2011-09-30                        99                            22.14
> > 2011-09-30                        121                          7.56
> > 2011-09-30                        139                          46.00
> > 2012-02-17                        140                          16.50
> > 2012-02-17                        144                          3.71
> > 2011-09-30                        144                          6.55
> > 2012-05-16                        161                          3.71
> > 2011-09-30                        161                          3.70
> >
> > O resultado que preciso trazer é o valor (EST_CUST_UND) com a data
> > (EST_DATA_ENTRADA) mais recente.
> >
> > Muito obrigado,
> >
> > Bruno
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> Att,
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> ------------------------------------
>
>
> ----------------------------------------------------------
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> ----------------------------------------------------------
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package »
> Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO!
> VISITE: http://www.oraclebr.com.br/
> ---------------------------------------------------------- Links do Yahoo!
> Grupos
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Att,


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

--------------------------------------------------------------------------------------------------------------------------
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  
------------------------------------------------------------------------------------------------------------------------
 Links do Yahoo! Grupos

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

<*> Para sair deste grupo, envie um e-mail para:
    oracle_br-unsubscr...@yahoogrupos.com.br

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


Responder a