Avatar billede Slettet bruger
09. juni 2009 - 09:14 Der er 7 kommentarer og
1 løsning

Random udtræk

Hvad gør jeg forkert i dette udtræk?

Set rs8 = Conn8.Execute("SELECT top 1 * FROM tblTilbud  ORDER BY RND (fldtilbud)")

Jeg vil gerne have at den vælger en tilfældig fra fldTilbud.
Avatar billede mugs Novice
09. juni 2009 - 09:25 #1
SELECT top 1 udvælger den første af en række poster alt efter sortering, men du vil have RND og det harmionerer jo ikke med RND.

Prøv at undgå TOP 1.
Avatar billede Slettet bruger
09. juni 2009 - 09:29 #2
Jeg får samme fejl hvis jeg undlader den.
Avatar billede mugs Novice
09. juni 2009 - 09:33 #3
Denne fungerer i en forespørgsel i ACC 2003:

SELECT TOP 1 Rnd([DIT FELT]) AS Udtryk1
FROM DIN TABEL;
Avatar billede jensen363 Forsker
09. juni 2009 - 09:33 #4
Jeg benytter normalt en funktion som supplement


Function Randomizer() As Integer
Static AlreadyDone As Integer
        If AlreadyDone = False Then Randomize: AlreadyDone = True
    Randomizer = 0
End Function


SELECT TOP 1 tbltilbud.fldtilbud
FROM tbltilbud
GROUP BY tbltilbud.fldtilbud
HAVING (((randomizer())=0))
ORDER BY Rnd(IsNull([fldtilbud])*0+1);
Avatar billede Slettet bruger
09. juni 2009 - 09:37 #5
Men nu bruger jeg den ældre version

Set Conn8 = Server.CreateObject("ADODB.Connection")
DSN8 = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("./tilbud.mdb")
Conn8.Open DSN8

Set rs8 = Conn8.Execute("SELECT TOP 1 * FROM tblTilbud  ORDER BY RND (fldTilbud)")

Altså jeg benytter asp, og ikke asp.net
Avatar billede Slettet bruger
09. juni 2009 - 09:58 #6
Nu har jeg fået lavet så den skriver alle 3 poster ud, selvom den har en rnd funktion. men den kommer så ikke med fejl.

Randomize
hej = -int(1000*Rnd())+1
Set rs8 = Conn8.Execute("SELECT TOP 1 Rnd(" & hej & "*fldID), * FROM (tblTilbud) ORDER BY fldTilbud")
Avatar billede mugs Novice
09. juni 2009 - 10:17 #7
Jeg har absolut ingen forstand på ASP.
Avatar billede Slettet bruger
03. juli 2009 - 08:23 #8
Lukker
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