On Mon, 27 Aug 2001 17:47:59 +0200, "Niels Andersen"
<niels-usenet@myplace.dk> wrote:
>Jeg skal bruge én tilfældig række fra en tabel. Man kunne selvfølgelig bruge
>"ORDER BY RAND() LIMIT 1", men det virker jo først fra version 3.23. Det er
>så vidt jeg ved en "unstable" version, så det kan vi altså ikke rigtigt
>bruge til noget før version 3.24 er kommet.
3.23 er blevet til en stable release for flere måneder siden. (Den
bruger ikke den der standard linux-ting med at ulige numre er unstable
og lige numre er stable).
Desuden kommer der vist slet ikke en 3.24, de går til v4.0
>Men hvad kan jeg gøre indtil da?
>
>"SELECT felt1,felt2,RAND() FROM tabel AS rand ORDER BY rand LIMIT 1" giver
>ikke det forventede resultat, det kommer nemlig i samme rækkefølge hver
>gang. Og det enda vist i samme rækkefølge, som hvis der ikke var en "ORDER
>BY". Øvs...
Du kan ikke sortere på et tablenavn... 'AS rand' skal nok flyttes hen
til efter RAND() for at give den ønskede effekt. Om det så virker skal
jeg lade være usagt...
--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
http://www.gartneriet.dk
Directory Opus - nu også til windows -
http://www.gpsoft.com.au