PDA

View Full Version : Zufällige Satzwiedergabe



_MG_
19-12-16, 07:51
Hallo zusammen,

ist es mittels RPG möglich Sätze aus einer Datei zufällig wiederzugeben? Jedoch so das am Ende alle Sätze einmal wiedergegeben wurden.

Danke im Voraus

Grüße

BenderD
19-12-16, 08:11
kurze Frage, präzise Antwort: JA

andreaspr@aon.at
19-12-16, 08:20
Einfach ein

ORDER BY rand()

_MG_
19-12-16, 09:22
Danke erstmal..
Ich muss meine Absicht vllt. doch etwas genauer schildern.

Nachdem die Sortierung erfolgt ist, möchte ich gerne mit "read" in einer Schleife auf die zufällige Sortierung zugreifen und die Sätze nacheinander in einem Displayfile ausgeben. Funktioniert das mit order by rand()? Denn ich versteh den Befehl so das er nicht die Datei sortiert sondern nur Liest oder?

Danke im Voraus

Grüße

andreaspr@aon.at
19-12-16, 10:11
Genau es die Sortierung wird beim Lesen gesetzt.
In RPG würde das ganze wie folgt aussehen:


Exec Sql Declare c1 Cursor for
Select * From Tab1
Order by Rand();

Exec Sql open c1;

Exec Sql fetch c1 Into :tab1ds;
// Hier halt eine Schleife um alle Sätze zu lesen

(Eventuelle Tippfehler vorbehalten. Habs jetzt nicht getestet)

_MG_
21-12-16, 17:28
Danke für den Ansatz. Hat auf Anhieb geklappt. Schöne Feiertage!

Grüße
MaxG

Fuerchau
22-12-16, 07:46
Nur nicht am Ende vergessen:
Exec Sql close c1;

_MG_
22-12-16, 08:09
ja ..hatte ich natürlich drin. Danke!