Hallo,
Zitat von
Jack23:
Wieso funktioniert diese Abfrage nicht?
ADOQuery1.Sql.Add('SELECT TOP '10' * FROM abc ORDER BY RAND()');
Abgesehen von dem bereits korrigierten String-Literal: Rand() ist hier keine Stored Procedure, sondern eine VBA-Funktion. Die wird hier aber nur einmal ausgewertet, stellt also eine Konstante dar. Damit sie für jeden Satz einen anderen Wert liefert, muss ein Bezug zu einem Feld der Tabelle hergestellt werden. Den Seed-Value muss man dann natürlich auch über VBA setzen.
Grüße vom marabu