Avatar billede starfarm Nybegynder
11. september 2007 - 10:53 Der er 5 kommentarer og
1 løsning

Random records fra db

Hej Eksperter.

Jeg har et problem, som jeg grundet mine ringe evner indenfor ASP ikke helt kan gennemskue.

Jeg skal hente nogle "random" profiler ud fra min db(mysql) og har fundet følgende her inde på eksperten.

Set RS = Conn.Execute("SELECT * FROM member WHERE picture <> '' ")


If RS.EOF = false then
    '//hent dine poster ind i array
       
    arrayRS = RS.GetRows()
 

    '//find 3 poster
    tot_unik = 3 'antallet af unikke tal
    top_number = Ubound(arrayRS, 2)

    dim random_number, counter, check, unique_numbers

    Redim random_number(tot_unik)
    Randomize

    For counter = 1 to tot_unik
        random_number(counter) = Int(Rnd * top_number)+1
        for check = 1 to counter - 1
            if random_number(check)= random_number(counter) then
            counter = counter - 1
            end if
        next
    next

    For counter = 1 to tot_unik
        response.Write random_number(counter)
       
       
    next
   
   
Det virker sådan set fint nok...random_number(counter) udskriver tilfældige numre ud fra mit array, men hvad nu når jeg skal bruge eksempelvis ID, Name og BirthDate ?? Det kan jeg ikke gennemskue.

Der er mange points i puljen, da jeg er lidt presset med det her.

Håber i kan hjælpe.
Avatar billede pidgeot Nybegynder
11. september 2007 - 10:57 #1
SELECT id, name, birthdate FROM member WHERE picture <> '' ORDER BY RAND() LIMIT 3

Så får du tre tilfældige records tilbage af MySQL, og skal blot hive dem ud.

Alternativt kan du jo også bare hente de tre rækker ud når du ved hvilke der er tale om...
Avatar billede starfarm Nybegynder
11. september 2007 - 11:11 #2
Det er jo supersimplet og ganske logisk :)

Har du nogen ide om hvordan jeg sikrer mig, at jeg ikke gentager en profil to gange(eller i værste fald tre)?
Avatar billede pidgeot Nybegynder
11. september 2007 - 11:43 #3
Jeg går ud fra du mener når du bruger ORDER BY RAND()? Det klarer den helt af sig selv.
Avatar billede starfarm Nybegynder
11. september 2007 - 11:47 #4
Ok... Det er jo bare dejligt :) Super tak for din hurtige respons... Det virker perfekt.
Avatar billede starfarm Nybegynder
11. september 2007 - 11:47 #5
pis... kan ikke finde ud af dette pointsystem...kan du lige smide et svar igen :)
Avatar billede pidgeot Nybegynder
11. september 2007 - 11:53 #6
Vælg mit navn i listen og tryk accepter. Der er ingen grund til at jeg smider et nyt ;)
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
Kurser inden for grundlæggende programmering

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