sto provando a fare dei test per un sito di aste al ribasso
ma ho problemi con la query sql che mi estrae l'offerta vincente.
La tabella che contiene le offerte è strutturata in questo modo:
id (contatore)
id_asta (asta alla quale si riferisce l'offerta)
offerta (valore dell'offerta, numero intero)
data_offerta (data quando è stata effettuata l'offerta)
dovrei estrarre il record con l'offerta, relativa all'oggetto,
con l'offerta unica più bassa. Nel caso non ci sia una offerta
unica ma tutte le offerte hanno almeno due partecipanti,
devo prendere, tra quelle con il numero di offerenti più bassa,
quella con il valore più bassa ed effettuata prima.
Esempio pratico
id offerta data
1 5 01/10/2009 14.00
2 5 02/10/2009 16.00
3 5 04/10/2009 17.00
4 7 03/10/2009 18.00
5 7 04/10/2009 14.00
4 9 03/10/2009 18.00
5 9 04/10/2009 14.00
l'offerta vincente sarà quella con ID 4 in quanto è quella
che, a parità del numero minimo di offerte ricevute,
è quella di importo inferiore e tra queste quella che
è stata effettuata prima tra quelle della stessa cifra.
Le offerte sono inserite con ordine cronologico,
quindi quelle con id inferiore sono quelle effettuate prima delle altre.
Ci sto provano con una serie di Group by ma non riesco a
ottenere quello che mi serve.
Sto per addentrarmi a provare delle query nidificate ma non
so se sia la strada giusta.
Qualsiasi suggerimento è il benvenuto.
luca

Rispondi quotando
