ホームページ >データベース >mysql チュートリアル >PHP MySQL でランダムな順序でページネーションを実装するにはどうすればよいですか?
ランダムな順序による PHP MySQL ページネーション
前述したように、Web サイトはページネーションを使用したコンテンツ ページの検索結果の順序付けで問題に直面しています。システム。使用されている SQL クエリは次のとおりです。
<code class="sql">SELECT * FROM table ORDER BY RAND() LIMIT 0,10;</code>
この問題は 3 つのシナリオで発生します。
解決策:
MySQL RAND(SEED) 関数がこの問題に対処します。ドキュメントに記載されているように、「定数の整数引数 N が指定されている場合、それがシード値として使用されます。」 (http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_rand)。
これをクエリ例に適用すると、順序がランダムのままになるシナリオが得られます。特定のシードに対して一貫性があること:
<code class="sql">SELECT * FROM your_table ORDER BY RAND(351);</code>
ユーザーが最初の結果ページにアクセスしてセッションに保存するたびにシードを変更できます。これにより、後続のページのランダムな順序に影響を与えることなく、最初のページにアクセスするたびに異なるランダムな順序が保証されます。
以上がPHP MySQL でランダムな順序でページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。