---
title: "Slumpa post ur databasen"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/8587-slumpa-post-ur-databasen"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "nanne"
published: "2000-04-02T19:08:00.000Z"
updated: "2001-03-18T16:28:00.000Z"
replies: 5
views: 239
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/8587-slumpa-post-ur-databasen"
---

# Slumpa post ur databasen

## #1 — nanne, 2000-04-02T19:08Z

Hur gör man det enklast? Jag kollade lite i manualen men hittade inget att gå på. Tips fås gärna

Permalänk: https://www.webforum.nu/p/8587

## #2 — bohlin, 2000-04-02T20:37Z

man kan ju alltid kolla hur många poster det finns, sen randomizer med det talet som max, och sen loop:a rs.movenext så många gånger som slumptalet blev.

Permalänk: https://www.webforum.nu/p/261346

## #3 — nanne, 2000-04-03T09:31Z

För att citera en TV serie (kommer inte ihåg vilken) "Man kan göra så. Men det är inte rätt" Det känns iaf inte rätt. Luktar fel liksom att man måste loopa sig fram till rätt post. Näää.

Permalänk: https://www.webforum.nu/p/261347

## #4 — Vide, 2000-04-03T09:51Z

Här är en kodsnutt som jag har gjort för att slumpa fram en länk ur min databas:

```
<%
SQL = "select count(*) AS count_lankar from lankar"
Set RS_count_lankar = databas.Execute(SQL)
					
Randomize
vilkenlank = Int(rnd*RS_count_lankar("count_lankar"))-1

SQL = "Select * from lankar"
	
Set RSdbase = Server.CreateObject("ADODB.Recordset")
RSdbase.open SQL, Session("dbasepath")
RSdbase.Move vilkenlank
url = RSdbase("lank")
lank_namn = RSdbase("namn")
lank_beskriv = RSdbase("beskrivning")
%>
```

... Alltså kollar jag först hur många länkar som finns... slumpar fram ett tal utifrån det... sen öppnar jag tabellen i ett recordset och hämtar posten som slumptalet tog fram...

Permalänk: https://www.webforum.nu/p/261348

## #5 — erik_nordell, 2001-03-16T23:33Z

Hur gör jag för att slumpa fram flera "länkar" som i detta fall?
Typ om jag vill ha 6 slumvalda rader från databasen, hur? :p

Permalänk: https://www.webforum.nu/p/261349

## #6 — LarsG, 2001-03-18T16:28Z

Lite loopar och så

```

<%
Dim links()
Dim counter,i,found
SQL = "select count(*) AS count_lankar from lankar"
Set RS_count_lankar = databas.Execute(SQL)

Randomize
  counter = 0
  do
     link = Int(rnd*RS_count_lankar("count_lankar"))-1
     found = 0
     for i = 0 to counter - 1
         if  links(i) = link then
             found = 1
             exit for
         end if
     next
     if found = 0 then
        links(counter) = link
        counter = counter -- 1
     end if
     if  counter = 6 then
         exit do
     end if
  loop

SQL = "Select * from lankar"

Set RSdbase = Server.CreateObject("ADODB.Recordset")
RSdbase.open SQL, Session("dbasepath"),adLockPessimistic,adOpenKeyset
for i = 0 to 5 
    RSdbase.Move links(i)
    url = RSdbase("lank")
    lank_namn = RSdbase("namn")
    lank_beskriv = RSdbase("beskrivning")
'gör något med länk
next
%>
```

Det är inte testat på något vis men du kan väl hämta någon ide i alla fall.

Permalänk: https://www.webforum.nu/p/261350

---

Tråden på webben: https://www.webforum.nu/amne/asp/8587-slumpa-post-ur-databasen
