:テーブルからランダムな行を返すGrails GORM?私が持っている私のGrailsアプリケーションで
keywords = Keyword
.findAll("from Keyword where locale = '$locale' order by rand() ", [max:20])
は、上記の条件に一致するテーブルの行数千人があるとします。しかし、テーブルから返される行はランダムではないようですが、返される20行のコンテキスト内では行がDbに格納されている順番にランダムになります。私のアプリケーションを動作させるには、このクエリは、行ID 203、行ID 3789、行ID 9087、行ID 789などのように、テーブルから完全にランダムな行を返すようにします。そんなことがあるものか?
はあなたがDatasource.groovyでSQLログを有効にし、クエリはそれが生成されているかを見ることができますか?私はMySQLに対して同様のクエリを使用し、期待どおりに動作するようです。 – leebutts
実際には、実行クエリを使用しています。私の答えを見て... – leebutts