[Db] query quiz

Domenico L. domenico.lorusso a pleiade.it
Lun 19 Mar 2007 16:59:22 CET


Marcello Vezzelli ha scritto:
> Marcello Vezzelli ha scritto:
>> Come faccio a ottenere le PRIME RISPOSTE a TUTTE le domande per un 
>> certo utente?
>> Suggerimenti?
>
> select * from risposte JOIN (
>    (SELECT * FROM `utilizzo` WHERE rif_utente=1 group by rif_domanda) 
> as q)
> ON risposte.id=q.rif_risposta
> ORDER BY q.rif_domanda
>
> Ho notato che scrivere una domanda in ml mi fa trovare la risposta da 
> solo :)
ma sei sicuro??

boh sarà il dialetto di mysql.. ma per esempio:
SELECT * FROM `utilizzo` WHERE rif_utente=1 group by rif_domanda

dovrebbe tornare errore...

Inoltre perché rif_risposta ti da le prime risposte??!?!? (poniamo che 
prendi il minore, ma dove lo fai?)

o forse non ho capito il problema...

 io avrei approcciato così (puoi anche sostituire dataora con rif_risposte):


select r.descrizione, s.*
from risposte s, richieste r
where ( rif_utente, rif_domanda, dataora) in
            (
                select rif_utente, rif_domanda, min(dataora)
                from risposte
                where rif_utente=1
                group by rif_utente, rif_domanda
            )

          and r.id=s.rif_domanda
   

(non so se su mysql questa sintassi è supportata, però al limite si 
rigira con una join )

ciao :-)

-- 
Domenico L.                             icq: 645 44 861

per stupire mezz'ora basta un libro di storia,
io cercai di imparare la Treccani a memoria... [F.d.A.]



Maggiori informazioni sulla lista Db