Ulrich Seniormester
05. februar 2021 - 16:36 Der er 3 kommentarer og
2 løsninger

Random udtræk i SQL-streng.

Jeg har brug for at trække 4 random linjer ud fra en Access database.
Bruger følgende:
"SELECT TOP 4 rnd(ID),* FROM SideLinkListe WHERE VisesPaaForside > '' ORDER BY rnd(ID) DESC"
Det er godt nok forskellige der kommer ud, men det er det samme hver gang.
Har Googlet og fundet flere der skriver om dette, men ingen direkte løsning.
Nogen der kan hjælpe men en streng der trækker 4 random linjer ud?
bsn Seniormester
05. februar 2021 - 16:45 #1
Gustav Seniormester
05. februar 2021 - 17:28 #2
Den enkle løsning er at medtage Timer():

SELECT TOP 4
    Rnd(-Timer()*[ID]) AS [Rnd Generator], *
FROM
    SideLinkListe
WHERE
    VisesPaaForside Is Not Null
ORDER BY
Rnd(-Timer()*[ID])


Ellers studér min artikel:
https://www.experts-exchange.com/articles/34471/Truly-Random-Numbers-in-VBA.html?preview=kYXBu8KHTtA%3D
Ulrich Seniormester
05. februar 2021 - 18:04 #3
bsn har sat svar ind på løsning:
http://actuar.dk/torben/show.asp?id=randomrecords

Gustav, din løsning virker ikke, din løsning gør det som der er problemet:
Problemet med MS Access er, at man ikke kan skrive SELECT felt FROM tabel ORDER BY Rnd og så forvente at den laver et nyt tilfældigt tal til hver record, som man så sorterer efter. Der vil kun blive dannet ét tilfældigt tal, som gives til alle records.
Ydermere, så vil det 'tilfældige' tal være det samme hver gang man spørger databasen. F.eks. giver SELECT Rnd altid det samme.
Gustav Seniormester
05. februar 2021 - 19:05 #4
Du må gøre et eller galt, for jeg ville jo ikke poste noget, der ikke virker; og det gør forespørgslen, fordi Timer og et kald til et felt (ID) tvinger Rnd til hver gang at starte et nyt sted i rækken af pseudo-tilfældige tal - det samme som Randomize gør i VBA.

Det er desuden den almindeligt brugte helt enkle løsning på dit velkendte problem.
Ulrich Seniormester
06. februar 2021 - 23:49 #5
Gustav, du har ret, din løsning virker også.
Den er mere enkel end den bsn kom med.
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.

Opret Preview

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





Premium
Sådan slipper danske it-selskaber afsted med at betale nul kroner i skat: "Der er klare tegn på, at spekulation i selskabsskat er udbredt"
En lang række it-selskaber på dansk jord betalte nul kroner i selskabsskat i løbet af 2019. Der findes flere årsager til - både mere eller mindre hæderlige - at selskaberne ikke poster penge i fælleskassen, lyder det fra global skatteekspert. Flere grunde er helt reelle mens andre er mere spekulative.
Computerworld
Endnu en tragisk ulykke med førerløs Tesla: Musk har store forventninger til ny software
En tragisk dødsulykke i USA i weekenden har sat forøget fokus på Teslas eksisterende semiautomatiske system og det kommende fuldautomatiske, der skal gøre bilerne helt selvkørende.
CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
White paper
Har du både dine applikationer og dit hoved i skyen?
Kan du nikke ja til en eller flere af disse situationer? • I bruger mange cloud-applikationer • I logger ind fra flere lokationer • I logger ind fra flere forskellige typer af devices Så kan du få stort udbytte af at læse dette whitepaper … Hver dag tilgår, navigerer og arbejder jeres medarbejdere i de applikationer, I har liggende i ”skyen”. Antallet af cloud-baserede applikationer stiger eksplosivt, så hvordan sikrer I ADGANGEN til dem og til de data, som applikationerne indeholder? Vel at mærke uden at gå på kompromis med BRUGERVENLIGHEDEN? Løsningen er Access Management, som er hovedtemaet for dette whitepaper.