通常のページングクエリ日常業務でビッグデータ クエリに遭遇した場合、最初に行うのはページング クエリの使用です。 MySQLは、指定された数のデータを選択するためのlimit文をサポートしていますが、Oracleはrownumを使用して選択することができます。 mysql ページング クエリ ステートメントは次のとおりです。 SELECT * FROM テーブル LIMIT [オフセット,] 行 | 行 OFFSET オフセット
最適化する方法上記の要約から、オフセットが大きく、データ量が多い場合、クエリ時間は依然としてかなり長くなることがわかります。そのため、これら 2 つのタイプの最適化を開始します。 大きなオフセットサブクエリの使用 まずオフセット位置のIDを見つけて、データを照会します。 テスト制限1000000,10から*を選択 テスト制限 1000000,1 から ID を選択 id>=(テストから id を選択 制限 1000000,1) の条件でテストから * を選択 制限 10 実行してみると、最初のクエリに最も時間がかかり、3 番目のクエリは最初のクエリよりもわずかに速く、インデックスを使用するとサブクエリの方が高速であることがわかります。 しかし、これはIDが増加する場合にのみ適用されます 使用ID制限この方法にはより高い要件があります。ID は継続的に増加し、ID の範囲を計算してから between を使用する必要があります。SQL は次のとおりです。 select * from test where id between 1000000 and 1000100 limit 100; id>=1000000 の制限 100 のテストから * を選択 結果はすぐに出る ここでは、エントリの数を制限するために limit が使用され、 offset は使用されません。 大量データ問題の最適化
これで、MySQL で 1000 万件のレコードをすばやくクエリする方法に関するこの記事は終了です。MySQL クイック クエリの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue が値を返してフォームを動的に生成し、データを送信する仕組みの詳細な説明
実際には、N 秒後にページを自動的にジャンプさせるにはどうすればよいかという問題によく遭遇します。私...
これらの 3 つのタグを間違った方法で使用して、タイトルを表に沿わせたり、tbody の高さを固定し...
目次ビジネス要件:解決策 1: vuex-persistedstate解決策2: vuex-pers...
主キーとは何ですか?主キーは、テーブル内の各タプル (行) を一意に識別するテーブル内の列です。主キ...
通常の開発では、凸型の丸い角、つまり border-radius 属性を使用するのが一般的です。凹角...
序文Deepin のユーザー インターフェイスは、使用時に非常に見栄えがします。インターフェイス効果...
効果効果図は以下のとおりです実装のアイデアDivは太陽の長方形の光と影を実現します前の疑似要素は、既...
需要背景:ミニプログラムページに GIF ダイナミック画像を挿入しますが、GIF 画像は通常サイズが...
1) プロセス 2) FSImageと編集NodeNode は HDFS の頭脳です。ファイルシステ...
1. MySQL 自己接続MySQL では、情報を照会するときに自分自身に接続 (自己接続) する必...
目次ライフサイクルの変化反応的な参照vue2.x では ref を使用して要素タグを取得します。vu...
レプリケーションとは、マスター データベースの DDL および DML 操作をバイナリ ログを介して...
使用シナリオ: Alibaba Cloud を使用しており、データディスクを別途購入しました (大容...
関連記事:初心者が学ぶ HTML タグ (5)導入された HTML タグは、必ずしも XHTML 仕...
この記事では、オブジェクト パラメータをインスタンス化して MySQL でデータをクエリする方法を紹...