Olá novamente...

Dando mais detalhes...

*Oswaldo:
Não sei se entendi corretamente mas um GROUP BY e um MAX(data) não
resolveria?
Ou o status que deseja retornar não é necessariamente o mais recente?
*
Osvaldo não resolve pq os status não estão em ordem! como disse nem tudo são
flores...


*Nilson:
select distinct l.nom, l.data_entrada, s.nome
from lancamentos l, status s, historico h
where l.id_lancamento = h.id_lancamento
and h.id_status = s.id_status
and (s.id_status = "id do pago" or s.id_status = "id do pendente")*

Ao Nilson o Select que você mandou também não resolve pq eu preciso saber se
o lancamento zz  teve cadastrado os status x ou y, mais tenho que retornar
apenas 1 vez o lancamento zz.

Quero alguma coisa que retorne se o lancamento zz teve os status x e y
cadastrados ou se teve x ou y cadastrados, para que quando for com o status
x e y apareçam em uma tabela e quando forem x ou y apareçam em outra tabela,
e lembrando que o lancamento zz pode ter os status x e y cadastrados
aleatoreamente...

consegui explicar?

Att.



2009/2/3 Nilson Chagas <nilson.chagas.si...@gmail.com>

>
>


> []s
> Nilson Chagas - Ubuntu User 25794
> ---
> Visite:
> http://www.amados.com.br/podcast
> http://tempodesalvacao.blogspot.com/
> http://bbnradio.org/
>
>
>
>
> 2009/2/3 Lucas Paz <lucas...@gmail.com>
>
>> Olá,
>>
>>
>> Vamos a duvida:
>>
>> tenho as tabelas LANCAMENTOS, HISTORICO_LANCAMENTOS e STATUS .
>>
>> LANCAMENTOS - PK(id_lancamento),nome,data_entrada e etc.
>> STATUS - PK(id_status), nome
>> HISTORICO_LANCAMENTOS - PK(id_hist_lancamento), FK(id_lancamento),
>> FK(id_status), data, usuario e etc...
>>
>> Acontece o seguinte, na tabela Lancamentos tenho os dados dos contratos,
>> na tabela STATUS apenas os status que podem existir de determinado contrato,
>> na tabela HISTORICO_LANCAMENTOS tenho os historicos de alteração dos status
>> do contrato.
>> os status dos contratos são: "PAGO, PENDENTE, FALTA ALGUMA COISA, ENVIADO"
>> e etc.
>>
>>
>> Nem tudo são flores...
>>
>> 1 contrato pode ter mais de 1 status ao mesmo tempo, ou seja um contrato
>> pode estar pendente e ser pago... até ai blz...
>> O que preciso fazer é um select que pegue os contratos que por exemplo
>> tenham os status PAGO e PENDENTE. Preciso retornar o mesmo apenas 1 vez.
>> Atualmente controlo isso por flags, a cada mudança no historico eu mudo 1
>> flag na tabela LANCAMENTOS. Funciona, mais gostaria de algo mais automatico
>> pois se acrescento 1 status tenho que criar novas flags alterar os triggers
>> e etc...
>>
>> alguem tem alguma sugestão?
>>
>>
>>
>> att.
>>
>> --
>> Lucas Paz
>>
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> pgbr-geral@listas.postgresql.org.br
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
>
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>


-- 
Lucas Paz
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a