この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 12683|答える: 0

[出典] MySQLは複数のデータをランダムに取得する手法を実装しています

[リンクをコピー]
掲載地 2017/07/19 21:34:04 | | |

SQL文を書く方法はいくつかあります
1: テーブル名から*を選択する RAND() 制限 取得したいデータ片の数;
2: 選択 *テーブルから ここで ID >= (SELECT FLOOR( MAX(id) * RAND()) FROM 'table') ) ID 制限による順序 取得したいデータ数;
3:SELECT * FROM 'TABLE' as t1 join (SELECT ROUND(RAND() * (SELECT MAX(id) FROM 'TABLE')) as id) as t2 ここで t1.id >= t2.id
ASC制限 t1.id 順序付け 取得したいデータ数;
4: SELECT * FROM 'table' ここで ID >= (SELECT FLOOR(RAND() * ((SELECT MAX(ID) FROM 'TABLE'))))の順序 ID 制限 取得したいデータの一部数;
5: SELECT * FROM 'table' ここで ID >= (SELECT FLOOR( RAND() * ((((SELECT MAX(id) FROM 'table')-(SELECT MIN(ID) FROM 'table'))) + (SELECT MIN(id) FROM 'table') ID by order limit 取得したいデータ断片の数;
6:SELECT * FROM 'TABLE' as t1 JOIN (SELECT ROUND(RAND() * ((SELECTED MAX(id) FROM 'table')-(SELECT MIN(ID) FROM 'table')+(SELECT MIN(ID) FROM 'table') as id) as t2 ここで t1.id >= t2.id 順に t1.id 取得したいデータの数を制限します。
クエリ時間が1>>クエリ時間が2>>クエリ時間が5>クエリ時間が6>クエリ時間が4>クエリ時間が3です。3が最も効率的です。




先の:リソース共有:組み込みSTM32プロジェクト開発心拍数モニターの設計と実装
次に:[更新] ウェブサイトのすべての投稿は英語に翻訳されます
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com