Em 18/06/2015 09:11, "Matheus de Oliveira"
escreveu:
>
>
> 2015-06-18 8:56 GMT-03:00 Matheus de Oliveira :
>>
>> SELECT t.tipo, r.*
>> FROM tipos t, LATERAL(
>> SELECT max(r1.data) AS data
>> FROM registros r1
>> WHERE r1.tipo = t.tipo
>> ) r;
>>
>> Ou, caso que
>
> Para quem não assistiu o vídeo está disponível em [1].
>
>
> [1] https://www.youtube.com/watch?v=Tx8cGwbJtCc
>
>
>
Parabéns!!! Ficou muito legal... infelizmente não pude assistir ao vivo.
Muito bom para nós meros mortais e aprendizes do PostgreSQL!
Att Glauco Torres
__
2015-06-18 8:56 GMT-03:00 Matheus de Oliveira :
> SELECT t.tipo, r.*
> FROM tipos t, LATERAL(
> SELECT max(r1.data) AS data
> FROM registros r1
> WHERE r1.tipo = t.tipo
> ) r;
>
> Ou, caso queira outras informações do registro (não somente a data), você
> pode u
2015-06-18 8:56 GMT-03:00 Matheus de Oliveira :
> O que nos leva a 4 abordagens diferentes
Ah. Esqueci de um detalhe, que pode ser importante. Das 4 abordagens,
apenas a sua considera empates, ou seja, para tipos que possuem mais de um
registro com maior data, a sua mostra todos, as demais mostr
2015-06-17 23:06 GMT-03:00 Luciano Bierhals :
> Select r1.*
> from registros r1
> join (select max(data) as data, tipo
> from registro
> group by tipo) r2 on r1.tipo = r2.tipo and r1.data = r2.data
>
Isso é geralmente conhecido como "groupwise max" e exitem várias formas de
res
> Em 17/06/2015 23:07, "Luciano Bierhals" escreveu:
>>
>> Pessoal,
>>
>> Assumindo meus limitados conhecimentos, tenho uma dúvida e gostaria de
um auxílio do grupo.
>>
>> Vamos a dúvida:
>>
>> CREATE TABLE "registros"
>> (
>> "ID" INTEGER NOT NULL,
>> "tipo" INTEGER NOT NULL,
>> "data"