[ASP] RE: [ASP] Zufälliger Datensatz

Hubert Daubmeier activeserverpages at glengamoi.com
Fri, 10 Dec 2004 00:10:51 +0100


 
> jetzt für Winter, also id 1, 2, 9, diese zufällig anzeigen lassen? =
Mit
count und rnd 
> komme ich hier nicht unbedingt weiter.

Schnellschutz Gedankenansatz: 

Mit 

SELECT count(id)  ...

Sagt mir wieveile passende Datensätze vorhanden sind 

Und btw. mit 

... WHERE RS = 'Winter' 

kann ich das Resultset passend einschränken

Damit wüsste ich "für Winter gibt es 3 Datensätze".  Dann mit dem Ansatz von
Gudula den passenden rausholen. 


Es muss aber eigentlich eleganter gehen.  Sagen wir mal 

SELECT id FROM tabelle WHERE RS = 'Winter' 

Mit RS.Count die Anzahl feststellen, Zufallszahl generieren und dann mit
Gudula's Ansatz die ID rausholen. Dann geht es ein zweites Mal auf die DB
los, diesmal aber gezielt.

Also angenommen
  IDs sind 1, 2, 9 
  Anzahl ist 3
  Zufallszahl wäre angenommen 2 

recordset.Move zufallszahl  (falls nullbasiert dann der dritte Datensatz mit
der ID = 9). Ob der Move nullbasiert ist weiss ich jetzt nicht. Bitte
nachlesen oder ausprobieren. 

Tempid = recordset(id).value   ' => ID rausholen

sSQL = "SELECT <feldliste> FROM tabelle WHERE id = " & tempid



> Ist sowas überhaupt machbar in vb?

In VB allemal. In VBS auch.  Besser so viel wie möglich die Datenbank selbst
machen lassen. 


<<Lösung unter dem Eindruck von 4 Viertel Wein verbrochen >>

-- 

Viele Grüße
Hubert Daubmeier 

-----Original Message-----
From: activeserverpages-admin@glengamoi.com
[mailto:activeserverpages-admin@glengamoi.com] On Behalf Of
frank.tauscher@wanadoo.fr
Sent: Thursday, December 09, 2004 6:31 PM
To: activeserverpages@glengamoi.com
Subject: [ASP] Zufälliger Datensatz


Hi,
suche nach einer Lösung für folgendes Problem:
ich möchte bei jedem Aufruf einer Seite einen Datensatz zufällig laden.
Dieser Datensatz kommt aus access2000 und soll abhängig von
der Jahreszeit angezeigt werden. Problem ist, das die Datensätze sich
verändern, also die Anzahl variiert und das durch löschen von
Datensätzen die jeweiligen id nicht chronologisch sein können. Zum Beispiel:
ID RS
1 winter
2 winter
3 sommer
5 herbst
9 winter

Wie kann ich jetzt für Winter, also id 1, 2, 9, diese zufällig anzeigen
lassen? Mit count und rnd komme ich hier nicht unbedingt
weiter. Ist sowas überhaupt machbar in vb?

Vielen Dank,
Frank



_______________________________________________
ActiveServerPages Mailingliste, Postings senden an:
ActiveServerPages@glengamoi.com
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/activeserverpages