<p dir="ltr">O banco tá com registros Max com a mesma data aí ferra na hora de juntar <br></p>
<p dir="ltr">Tem q criar um id e pegar o Max do id do Max de cada data/func </p>
<div class="gmail_quote">Em 19/11/2012 16:08, "Lucas Moraes" <<a href="mailto:lucastiagodemoraes@gmail.com">lucastiagodemoraes@gmail.com</a>> escreveu:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Tente usar DISTINCT.<br>
<br>
Em 19 de novembro de 2012 16:00,  <<a href="mailto:cascavel-pm-request@pm.org">cascavel-pm-request@pm.org</a>> escreveu:<br>
> Enviar submissões para a lista de discussão Cascavel-pm para<br>
>         <a href="mailto:cascavel-pm@pm.org">cascavel-pm@pm.org</a><br>
><br>
> Para se cadastrar ou descadastrar via WWW, visite o endereço<br>
>         <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
> ou, via email, envie uma mensagem com a palavra 'help' no assunto ou<br>
> corpo da mensagem para<br>
>         <a href="mailto:cascavel-pm-request@pm.org">cascavel-pm-request@pm.org</a><br>
><br>
> Você poderá entrar em contato com a pessoa que gerencia a lista pelo<br>
> endereço<br>
>         <a href="mailto:cascavel-pm-owner@pm.org">cascavel-pm-owner@pm.org</a><br>
><br>
> Quando responder, por favor edite sua linha Assunto assim ela será<br>
> mais específica que "Re: Contents of Cascavel-pm digest..."<br>
><br>
><br>
> Tópicos de Hoje:<br>
><br>
>    1. Re: OFF - Select Mysql (Eduardo Maia)<br>
><br>
><br>
> ----------------------------------------------------------------------<br>
><br>
> Message: 1<br>
> Date: Mon, 19 Nov 2012 14:59:57 -0300<br>
> From: Eduardo Maia <<a href="mailto:maia@eduardomaia.com">maia@eduardomaia.com</a>><br>
> To: <a href="mailto:sammuel.souza@gmail.com">sammuel.souza@gmail.com</a>, Cascavel Perl Mongers<br>
>         <<a href="mailto:cascavel-pm@pm.org">cascavel-pm@pm.org</a>><br>
> Subject: Re: [Cascavel-pm] OFF - Select Mysql<br>
> Message-ID:<br>
>         <CAGore=V5VtEwau0ehK_=<a href="mailto:z8_tSWuWiV7GB7x9GM%2BKWnW7U5s-Cg@mail.gmail.com">z8_tSWuWiV7GB7x9GM+KWnW7U5s-Cg@mail.gmail.com</a>><br>
> Content-Type: text/plain; charset="utf-8"<br>
><br>
> Ah, eu havia entendido errado!<br>
><br>
> SELECT funcionario, cd_Funcao, cd_situ, MAX(data_ocorrencia)<br>
> FROM funcionarios<br>
> GROUP BY funcionario, cd_Funcao, cd_situ<br>
><br>
> Se ainda não foi possível resolver sua questão, por favor envia um desc das<br>
> tabelas que entram nessa query.<br>
><br>
> Abs<br>
><br>
><br>
> 2012/11/19 Sammuel Souza <<a href="mailto:sammuel.souza@gmail.com">sammuel.souza@gmail.com</a>><br>
><br>
>> Boa Tarde,<br>
>><br>
>> eu quero mostrar todos os usuarios e nao somente 3 registro.<br>
>><br>
>><br>
>> select * from uncionario where cd_situ<>99 group by cd_funcionario;<br>
>><br>
>> pois toda vez que altera os dados ele cria um registro novo com todas as<br>
>> informações colocando apenas a data no data_ocorrencia<br>
>><br>
>> Assim se o funcionario foi demitido ou retornou para empresa, somente com<br>
>> o ultimo registro no data_ocorrencia.<br>
>><br>
>> Se eu colocar limit 1<br>
>><br>
>> ele nao vai mostrar todos os funcionarios somente o primeiro.<br>
>><br>
>> Em 19 de novembro de 2012 13:58, Eduardo Maia <<a href="mailto:maia@eduardomaia.com">maia@eduardomaia.com</a>>escreveu:<br>
>><br>
>> A solicitação do desenvolvedor foi:<br>
>>><br>
>>><br>
>>> "Preciso fazer um select onde mostra dos dados *do ultimo registro*."<br>
>>><br>
>>> "mostra todos os registro em ordem de data, porem *quero somente o ultimo<br>
>>> *."<br>
>>><br>
>>> Para trazer apenas um registro, o último ou o primeiro (dependendo do<br>
>>> order by), utiliza-se em MySQL o *LIMIT*. Dei inclusive dois exemplos no<br>
>>> email anterior.<br>
>>><br>
>>><br>
>>> select * from produto order by rand() *limit 1*<br>
>>><br>
>>> select nome from lojista where email like '%gmail%' *limit 1*<br>
>>><br>
>>> É possível colocar (por exemplo) limit 3 se for para trazer 3 registros -<br>
>>> mais uma vez, os 3 últimos ou 3 primeiros, dependendo do order by.<br>
>>><br>
>>> Não ficou claro? Viajei em alguma coisa?<br>
>>><br>
>>><br>
>>><br>
>>> 2012/11/19 Renato Santos <<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a>><br>
>>><br>
>>>> ???!<br>
>>>> Em 19/11/2012 12:05, "Eduardo Maia" <<a href="mailto:maia@eduardomaia.com">maia@eduardomaia.com</a>> escreveu:<br>
>>>><br>
>>>> Sugiro utilizar *LIMIT 1*<br>
>>>>><br>
>>>>> select * from produto order by rand() limit 1<br>
>>>>><br>
>>>>> select nome from lojista where email like '%gmail%' limit 1<br>
>>>>><br>
>>>>> Abs<br>
>>>>><br>
>>>>><br>
>>>>> 2012/11/18 Renato Santos <<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a>><br>
>>>>><br>
>>>>>> pensei q vc já tinha 2 tabelas separadas com o funcionario.<br>
>>>>>><br>
>>>>>> já que não tem, tem q agrupar por todas as colunas.<br>
>>>>>><br>
>>>>>> SELECT a.cd_funcionario,<br>
>>>>>>        a.nm_funcionario,<br>
>>>>>>        a.cd_cargofuncao,<br>
>>>>>>        a.cd_situacao,<br>
>>>>>>        a.dt_admissao,<br>
>>>>>>        a.dt_ocorrencia_aud<br>
>>>>>> FROM   aud_folhfuncionario AS a<br>
>>>>>>        INNER JOIN (SELECT *Max*(dt_ocorrencia_aud)AS dt_ocorrencia_aud<br>
>>>>>> ,<br>
>>>>>>                           cd_funcionario,<br>
>>>>>>                           cd_cargofuncao,<br>
>>>>>>                           cd_situacao<br>
>>>>>>                    FROM   aud_folhfuncionario<br>
>>>>>>                    GROUP  BY cd_funcionario) AS b<br>
>>>>>>                ON a.dt_ocorrencia_aud = b.dt_ocorrencia_aud<br>
>>>>>>                   AND a.cd_cargofuncao = b.cd_cargofuncao<br>
>>>>>>                   AND a.cd_situacao = b.cd_situacao<br>
>>>>>> WHERE  a.cd_situacao <> 9<br>
>>>>>> *GROUP BY 1,2,3,4,5,6; *<br>
>>>>>><br>
>>>>>><br>
>>>>>> 2012/11/18 Sammuel Souza <<a href="mailto:sammuel.souza@gmail.com">sammuel.souza@gmail.com</a>><br>
>>>>>><br>
>>>>>>> Consegui pegar o ultimo registro porem mostra todos<br>
>>>>>>><br>
>>>>>>> select<br>
>>>>>>> a.cd_funcionario,a.nm_funcionario,a.cd_cargofuncao,a.cd_Situacao,a.Dt_admissao,a.dt_ocorrencia_aud<br>
>>>>>>> from AUD_FOLHFuncionario as a inner join (select max(dt_ocorrencia_AUD)as<br>
>>>>>>> dt_ocorrencia_aud,cd_funcionario,cd_cargofuncao,cd_Situacao from<br>
>>>>>>> AUD_FOLHFuncionario group by cd_funcionario) as b on a.dt_ocorrencia_aud =<br>
>>>>>>> b.dt_ocorrencia_aud and a.cd_cargofuncao=b.cd_cargofuncao and<br>
>>>>>>> a.cd_Situacao=b.cd_Situacao where a.cd_Situacao<>9;<br>
>>>>>>><br>
>>>>>>><br>
>>>>>>><br>
>>>>>>> Sammuel<br>
>>>>>>><br>
>>>>>>> Em 18 de novembro de 2012 16:56, Renato Santos <<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a><br>
>>>>>>> > escreveu:<br>
>>>>>>><br>
>>>>>>> Uma maneira de fazer isso é fazer uma subconsulta sobre um select com<br>
>>>>>>>> o id do funcionario + a ultima data.<br>
>>>>>>>><br>
>>>>>>>> SELECT *<br>
>>>>>>>> FROM ...<br>
>>>>>>>> WHERE<br>
>>>>>>>> (cd, data_ocorrencia) = (<br>
>>>>>>>>     SELECT cd, max(data_ocorrencia)<br>
>>>>>>>>     FROM ..<br>
>>>>>>>>     GROUP BY cd;<br>
>>>>>>>> )<br>
>>>>>>>><br>
>>>>>>>> porém nem todos os bancos suportam esse tipo de comparação em<br>
>>>>>>>> conjunto. Postgres funciona.<br>
>>>>>>>><br>
>>>>>>>> Em mysql talvez você precise colocar isso num inner join:<br>
>>>>>>>> SELECT *<br>
>>>>>>>> FROM tabela_func me, outras..<br>
>>>>>>>> INNER JOIN (cd, data_ocorrencia) = (<br>
>>>>>>>>     SELECT cd, max(data_ocorrencia)<br>
>>>>>>>>     FROM ..<br>
>>>>>>>>     GROUP BY cd;<br>
>>>>>>>> ) sub ON (<a href="http://sub.cd" target="_blank">sub.cd</a> = <a href="http://me.cd" target="_blank">me.cd</a> AND sub.max = me.data_ocorrencia)<br>
>>>>>>>><br>
>>>>>>>>  Boa sorte,<br>
>>>>>>>><br>
>>>>>>>> nao cheguei a testar, só é a ideia mesmo<br>
>>>>>>>><br>
>>>>>>>> 2012/11/18 Sammuel Souza <<a href="mailto:sammuel.souza@gmail.com">sammuel.souza@gmail.com</a>><br>
>>>>>>>><br>
>>>>>>>>> Boa Tarde,<br>
>>>>>>>>><br>
>>>>>>>>> sei que o forum é de PERL porem nao participo de forum MySQL<br>
>>>>>>>>><br>
>>>>>>>>> Caso alguem puder me ajudar.<br>
>>>>>>>>><br>
>>>>>>>>> cd    funcionario        cd_Funcao    cd_situ        data_ocorrencia<br>
>>>>>>>>> 2    ANTANA ODESTO        62        1        2004-08-09 09:30:33<br>
>>>>>>>>> 2    ANTANA ODESTO        78        1        2009-05-21 10:06:24<br>
>>>>>>>>> 2    ANTANA ODESTO        62        1        2010-10-26 08:43:12<br>
>>>>>>>>> 6    ALTER LVES DO        55        1        2005-04-15 10:44:14<br>
>>>>>>>>> 6    ALTER LVES DO        84        1        2012-01-24 17:16:40<br>
>>>>>>>>> 6    ALTER LVES DO        84        1        2012-09-06 16:53:47<br>
>>>>>>>>> 11    NESIO ONSALVES        60        1        2004-08-09 11:59:56<br>
>>>>>>>>> 11    NESIO ONSALVES        60        99        2010-08-25 10:43:32<br>
>>>>>>>>><br>
>>>>>>>>> a tabela Funcionarios cria outro registro para o funcionario quando<br>
>>>>>>>>> muda os dados assim incluindo a data da alteracao, pois o registro que<br>
>>>>>>>>> serve é o com a data maior.<br>
>>>>>>>>><br>
>>>>>>>>> Preciso fazer um select onde mostra dos dados do ultimo registro.<br>
>>>>>>>>><br>
>>>>>>>>> Group by<br>
>>>>>>>>><br>
>>>>>>>>> select * from uncionario where cd_situ<>99 group by cd_funcionario;<br>
>>>>>>>>><br>
>>>>>>>>> mostra assim:<br>
>>>>>>>>> 2    ANTANA ODESTO        62        1        2004-08-09 09:30:33<br>
>>>>>>>>> 6    ALTER LVES DO        55        1        2005-04-15 10:44:14<br>
>>>>>>>>> 11    NESIO ONSALVES        60        1        2004-08-09 11:59:56<br>
>>>>>>>>><br>
>>>>>>>>> select * from uncionario where cd_situ<>99 group by<br>
>>>>>>>>> cd_funcionario,data_ocorrencia DESC;<br>
>>>>>>>>><br>
>>>>>>>>> mostra todos os registro em ordem de data, porem quero somente o<br>
>>>>>>>>> ultimo.<br>
>>>>>>>>><br>
>>>>>>>>> Alguem poderia me ajudar?<br>
>>>>>>>>><br>
>>>>>>>>> _______________________________________________<br>
>>>>>>>>> Cascavel-pm mailing list<br>
>>>>>>>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>>>>>>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>> --<br>
>>>>>>>> Saravá,<br>
>>>>>>>> Renato CRON<br>
>>>>>>>> <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>
>>>>>>>> @renato_cron <<a href="http://twitter.com/#!/renato_cron" target="_blank">http://twitter.com/#!/renato_cron</a>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>><br>
>>>>>>><br>
>>>>>>> --<br>
>>>>>>> _____________________<br>
>>>>>>>  ????µ???<br>
>>>>>>><br>
>>>>>>><br>
>>>>>>> _______________________________________________<br>
>>>>>>> Cascavel-pm mailing list<br>
>>>>>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>>>>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>> --<br>
>>>>>> Saravá,<br>
>>>>>> Renato CRON<br>
>>>>>> <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>
>>>>>> @renato_cron <<a href="http://twitter.com/#!/renato_cron" target="_blank">http://twitter.com/#!/renato_cron</a>><br>
>>>>>><br>
>>>>>><br>
>>>>>> _______________________________________________<br>
>>>>>> Cascavel-pm mailing list<br>
>>>>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>>>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>>>>><br>
>>>>><br>
>>>>><br>
>>>>> _______________________________________________<br>
>>>>> Cascavel-pm mailing list<br>
>>>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>>>><br>
>>>><br>
>>>> _______________________________________________<br>
>>>> Cascavel-pm mailing list<br>
>>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>>><br>
>>><br>
>>><br>
>>> _______________________________________________<br>
>>> Cascavel-pm mailing list<br>
>>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>>><br>
>><br>
>><br>
>><br>
>> --<br>
>> _____________________<br>
>>  ????µ???<br>
>><br>
>><br>
>> _______________________________________________<br>
>> Cascavel-pm mailing list<br>
>> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
>> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
>><br>
> -------------- Próxima Parte ----------<br>
> Um anexo em HTML foi limpo...<br>
> URL: <<a href="http://mail.pm.org/pipermail/cascavel-pm/attachments/20121119/26e774af/attachment.html" target="_blank">http://mail.pm.org/pipermail/cascavel-pm/attachments/20121119/26e774af/attachment.html</a>><br>

><br>
> ------------------------------<br>
><br>
> Subject: Legenda do Digest<br>
><br>
> _______________________________________________<br>
> Cascavel-pm mailing list<br>
> <a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
> <a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
><br>
> ------------------------------<br>
><br>
> Fim da Digest Cascavel-pm, volume 410, assunto 5<br>
> ************************************************<br>
_______________________________________________<br>
Cascavel-pm mailing list<br>
<a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br>
</blockquote></div>