0

システムで時間やリソースをあまり使用せずに、MySQL からランダムな行を取得しようとしています。与えられたコードが PHP または MySQL ベースであるかどうかは気にしませんが、テーブルに「ギャップ」があることに注意してください。

テーブルの列は 'id' (主キー、自動インクリメント)、varchar、int、int です

なるべくランダムにしたい

4

3 に答える 3

2

良い解決策は、MySQL でテーブルからランダムな行を選択する最良の方法は何ですか? 質問。

于 2009-11-10T20:00:34.690 に答える
1

2 つのクエリで実行し、全体で 3 つの手順を実行します。

  1. を使用してテーブル内の行数を見つけますSELECT COUNT(*) FROM your_table
  2. PHP の数学関数を使用して、0 から行数までの乱数を見つけます。
  3. を使用して必要な実際のデータを取得しますSELECT * FROM your_table LIMIT 200, 1。ここで、200 は手順 2 で計算した乱数です。
于 2009-11-10T20:02:12.493 に答える
0

以下を使用できます。

SELECT id FROM table ORDER BY RAND() limit 1
于 2009-11-10T19:58:06.597 に答える