Avatar billede suppenudel Nybegynder
12. september 2006 - 11:34 Der er 8 kommentarer og
1 løsning

Udvælg random record

Hej.

Hvordan kan man bedst via SQL udvælge en random record fra sin tabel. Har prøvet med:

SELECT * FROM(MinTabel) ORDER BY Rnd(ID)

- Men synes at den hele tiden henter det højeste ID, kan det passe eller er der en bedre metode?
Avatar billede mugs Novice
12. september 2006 - 12:46 #1
Avatar billede suppenudel Nybegynder
12. september 2006 - 15:54 #2
Hej - vil det sige at der skal kodes lidt før det kan lade sig gøre, der er ikke nogen ren SQL-løsning?
Avatar billede mugs Novice
12. september 2006 - 16:43 #3
Det er blot at kopiere koden og indsætte den i et modul. Derefter kopierer du denne ind i SQL-sætningen i en forespørgsel:

SELECT TOP 1 Tabel1.*
FROM Tabel1
WHERE randomizer()=0
ORDER BY rnd(isnull(Tabel1.felt1)*0+1);

Husk at ændre tabel - og feltnavnet, så får du en tilfældig record når forespørgslen køæres.
Avatar billede suppenudel Nybegynder
13. september 2006 - 09:43 #4
Hov, jeg glemte at fortælle at jeg skal bruge udtrækket i en asp.net web applikation. Databasen er Access, men mon den function kan bruges i vb?
Avatar billede mugs Novice
13. september 2006 - 09:59 #5
Know nothing om asp.net - beklager
Avatar billede suppenudel Nybegynder
13. september 2006 - 10:17 #6
Okay, bare i orden. Du skal have tak for hjælpen alleigevel.
Avatar billede mugs Novice
13. september 2006 - 10:25 #7
Selv tak og tak for point - Men fungerer det i din applikation, ellers behøver du ikke at give point.
Avatar billede suppenudel Nybegynder
13. september 2006 - 10:31 #8
Nej, men jeg skulle bare have skrevet fra en start at det også skulle fungere fra en applikation. Dit forslag virker jo fint nok i access :-)
Avatar billede suppenudel Nybegynder
13. september 2006 - 11:13 #9
Jeg lavede en løsning hvor der blev valgt et random tal mellem 1 og MAX(ID) i min tabel. Det random tal bliver så brugt i min WHERE sætning. Der er nok smartere måder at gøre det på, jeg troede man kunne gøre det udelukkende SQL-specifikt..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester