oJonesMedlem sedan dec. 200154 inlägg Hej!
Behöver ha en SQL-sats som kan slumpa ut en post. Just nu lyckas jag bara slumpa ut en post om jag kör en kolumn som heter ID, plocka fram högsta posten i den och slumpar ut en siffra mellan 1 och högsta värdet på ID.
Visst, det fungerar, men mitt problem är egentligen det att om man raderar en post i ID så att följden blir 1,2,4 så fungerar det inte med att slumpa ut (den slumpar bara mellan 1 och 2 eftersom post 3 fattas).
Min tanke är således att ha en SQL sats som bara slumpar fram en post ur en kolumn utan siffror.
Ex.
Efternamn
---------
Nilson
Svensson
Bertilsson
Sen är chansen lika stor att den slumpar ut Bertilsson som Nilsson och Svensson.
Hänger ni med?
Kör Ms SQL 2000.
Vore oerhört tacksam för svar!
RobbanMedlem sedan dec. 19992 555 inlägg oJonesMedlem sedan dec. 200154 inlägg Hmm, det där hjälpte mig föga.. Antingen är det där inte va djag söker, eller också är jag bäng i huvudet o behöver hjälp. Kan någon förklara hur jag ska gå tillväga?
RobbanMedlem sedan dec. 19992 555 inlägg Kort sagt -- om du har en ID-kolumn utan luckor kan du ta fram en slumpad post på det sätt du själv beskriver. Om du inte har en ID-kolumn utan luckor (som i ditt fall) så är alternativen:
1. Skapa en temporär tabell utan luckor där varje post pekar på en post i den första tabellen, och slumpa från denna temporära tabell (behöver inte vara så slött som det låter, om du använder 'stored procedures').
2. Hämta samtliga ID ur tabellen med luckor, lägg resultatet i en array och slumpa sedan ur arrayen.
Finns, vad jag vet, inget sätt att slumpa fram en post direkt i SQL.
------------------
Robban < robban@lipogram.com >