18. august 2004 - 15:05Der er
19 kommentarer og 1 løsning
Udskriv records vilkårligt
Jeg skal have lavet en søge side, når man indtaster søge kriterierne skal der kune komme max 9 poster frem. de 9 poster skal frem på skærmen, men de skal komme i vilkårlig række følge. Dvs. at den samme række følge af posterne ikke må fremkomme hver gang man søger med samme søge kriterier.
Er der noget SQL-script som kan sørge for at posterne i tabelen bliver sorteret vilkårligt? dvs.
Okay, den udskriver i vilkårlig rækkefølge, men når jeg laver den samme søgning 2 gange, så får jeg præcis den samme vilkårlig rækkefølge ud. Det skal skal være ny række følge hvergang.
Når jeg bruger "order by rnd(id)" i selve Access databasen, så virker det fint, og data kommer vilkårligt hvergang, men når jeg udskriver det til min asp side, så kommer det ens ud ved den samme søgning. Hvad kan det skyldes?
Jeg bruger følgende kode:
Function seek
strSQL ="SELECT * FROM Haandvaerker WHERE Aktiv= 1 And (Type =" & request.Form("R1") & " And Postnr = " & request.Form("postnr") & ")"
dim lock
lock =0
if request.Form("C1") <>"" then if lock =1 then strSQL = strSQL & " Or Produkt1 = " & request.Form("C1") else strSQL = strSQL & " And (Produkt1 = " & request.Form("C1") lock=1 end if end if
if request.Form("C2") <>"" then if lock =1 then strSQL = strSQL & " Or Produkt2 = " & request.Form("C2") else strSQL = strSQL & " And (Produkt2 = " & request.Form("C2") lock=1 end if end if
if request.Form("C3") <>"" then if lock =1 then strSQL = strSQL & " Or Produkt3 = " & request.Form("C3") else strSQL = strSQL & " And (Produkt3 = " & request.Form("C3") lock=1 end if end if
if lock = 1 Then strSQL = strSQL & ")" end if
lock=0 strSQL = strSQL & " order by rnd(Id)" seek=strSQL
SELECT * FROM Haandvaerker WHERE Aktiv= 1 And (Type =1 And Postnr = 2750) And (Produkt1 = 1 Or Produkt2 = 1 Or Produkt3 = 1)and (Randomizer()=0) order by rnd(isnull(Haandvaerker.Id)*0+1)
Kan du ikke lige skrive nogle komentare til koden, så jeg hved hvad der sker?
Synes godt om
Ny brugerNybegynder
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.