MySQL で RAND() 関数のシードを設定することは可能ですか? 予想される結果がどうなるかを確認するために、単体テストにこれが必要です。
PHP では、単純に次のようにします。
<?php srand(12345); echo rand(); ?>
私のモデルでは、現在次のようなクエリがあります。
SELECT * FROM table ORDER BY RAND() LIMIT 1;
単体テストでは、RAND() のシードが何であるかを確認して、クエリが返すレコードを確認したいと思います。
私のモデルでクエリの前に追加のクエリを実行することでしょうか?
RAND() に引数を追加するだけでよいことはわかっていますが、これは私が望んでいるものではありません。クエリを変更したくありません。
PS。Linux を使用しています。/dev/random のシードを設定すると役立つでしょうか?