問題タブ [sql-optimization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
131 参照

sql - この SQL ステートメントは最適化できますか?

これは、大規模なデータ セットでは非常に長い時間がかかるようです。最初と最後の 3 つのクエリを 1 つに結合すると、高速になりますか? 何が高速化するかについて誰かが意見を持っていますか? それは有り難いです。

さらに -

ありがとう

0 投票する
2 に答える
76 参照

sql - 正規表現は int 列を効率的に検索しますか?

整数列idにインデックスがあるとします。

id一致するレコードを効率的に見つけるにはどうすればよい%789%ですか?

id LIKE '%789%'インデックスを使用できず、パフォーマンスの問題が発生します。

仕事を効率的に行うコツはありますか?

0 投票する
2 に答える
3205 参照

sql - SQL最適化Caseステートメント

左外部結合のcaseステートメントを使用することで、このsqlステートメントを最適化できると思います。

しかし、私はケースを設定するのに苦労してきました。1つはコードタイプAB、CDを要約するためのもので、もう1つは残りすべてのためのものです。

あなたがこれについて私に与えることができるどんな助けやヒントにも感謝します。

0 投票する
2 に答える
1382 参照

mysql - SQLマッピングテーブルはクエリを高速化しますか?どのように使用しますか?

マッピングテーブルの目的と、それがMySQLクエリをどのように高速化するかを知りたいです。私は遅いMySQLクエリの高速化に取り組んでおり、このスタックオーバーフローの質問に遭遇しました。コメントは、マッピングテーブルが両方のテーブルを結合するクエリを高速化するだけでなく、データベースを構造化するための適切な方法であることを示唆しています。

私は非常によく似たテーブル構造を持っており、1対多の関係にあります。テーブルが大きくなるにつれて、クエリの実行時間は許容できないレベルまで上昇し続けます。私は自分の問題を解決するのに役立つウェブ上で多くを見つけることができなかったので、私はスタックオーバーフローを試してみましたが、皆さんは私をがっかりさせたことがないからです。

0 投票する
1 に答える
4817 参照

sql - SELECTDISTINCT非常に遅い

次のように実行するのに48秒かかるクエリがあります。

キーワードを削除するとDISTINCT1秒もかからないので、ボトルネックはその中にあるようです。

tmd_loginsデータベースは、ユーザーがシステムにログインするたびにテーブルにエントリを追加します。過去30日間など、特定の期間内に作成およびログインされた患者であるすべてのユーザーの総数を取得しようとしています。

DISTINCTキーワードを削除group by tmd_logins.userIDしてステートメントに追加しようとしましたが、パフォーマンスの問題が残っています。

テーブルtmd_loginsには約300,000のレコードがtmd_usersあり、約40,000があります

これを行うためのより良い方法はありますか?

0 投票する
1 に答える
262 参照

mysql - このSQLの「ファイルソートの使用」を解決するにはどうすればよいですか?

次の表があります。

テスト用にいくつかのレコードを入力します。

この SQL を実行すると:

このSQLの「ファイルソートの使用」を解決するにはどうすればよいですか?

手伝ってくれてありがとう :)

0 投票する
2 に答える
2085 参照

sql - 2つのOracleテーブルを結合し、日付と日付範囲が重複しないようにします

私は2つのテーブルを持っています:

  • トリップ:id_trip、id_object、trip_date、delta(8980026行)
  • 範囲:id_range、id_object、date_since、date_until(18490行)

次のselectステートメントを最適化する必要があります

条件に応じて、「範囲」内のトリップに一致する行が常に1つだけ存在します。

  • トリップテーブルは常に増え続けていますが、更新や削除はありません
  • テーブルの範囲は、任意の方法(削除、更新、挿入)で時々変更される可能性があるため、関数ベースのインデックスは方法ではありません:(
  • id_object(両方のテーブル)とdate_since(トリップ)にインデックスがあります

誰かが物事をスピードアップする方法を知っていますか、それも可能ですか?

0 投票する
4 に答える
193 参照

mysql - 複数のANDを使用して結合クエリを最適化するための最良の方法は何ですか?


一日の特定の時間帯の空き状況に応じて商品を予約できるオンライン予約システムを開発しています。そのために私は2つのテーブルを使用しています1.アイテム2.予約

上記のクエリを使用して、特定のカテゴリのすべてのアイテムを、ユーザーが特定の日に予約できる無料のタイムスロットで表示しています。

予約テーブルのスロットフィールドに文字列が含まれています(例:0:1:1:1:0:0:0:0:0:0:0:1:1:1:0:0:0:0:0: 0:0:0:0)ここで、1は時間が予約されていることを意味し、0は利用可能であることを意味します。

アイテムテーブルの可用性は、アイテムが予約可能かどうかを示します(サービスのためにダウンしている可能性があります)。

まず第一に、私のテーブル構造は素晴らしいですか?第二に、私のクエリを最適化するための最良の方法は何ですか(複数列のインデックス作成など)。

ありがとう、
ラヴィ。

0 投票する
1 に答える
194 参照

ruby-on-rails - Rails 3.1:単一のクエリで結合テーブルを介して many_to_many を最適化しますか?

ユーザーは、お気に入りを通じて多くのトラックを持っています。:as_publicお気に入りには、関連するトラックに関する追加のユーザーごとのメタデータがいくつかあり、カスタムハッシュ メソッドを使用してすべてが json blob として返されます。

JOIN を使用して関連オブジェクトにアクセスしていますが、何百もの非常に基本的なSELECT track FROM tracks WHERE track.id='1'クエリを作成しています。このルックアップを最適化したい。

ユーザーコントローラー:

user.rb

お気に入り.rb

track.rb

公開トラックとしてユーザーのお気に入りにアクセスしたときに実行される SQL は次のとおりです。

何百もの SELECT トラック where track.id='...' クエリを作成せずにこれを行うにはどうすればよいですか?

ありがとう!

0 投票する
1 に答える
628 参照

sql - 次の 7 つの更新クエリに対する SQL の最適化。同じテーブル。一つにまとめる?

次のクエリは、同じテーブルを 7 回更新します。これを 1 つのクエリにまとめて、7 回ではなく 1 回だけテーブルを通過するように最適化する方法を教えてください。大規模なデータセット..

ありがとう。

PSそれでもうまくいくかどうかはわかりませんが、各クエリ文字列は正確に計算する前にクエリに依存します..したがって、正確に保つためにそれらを分離しておく必要がある場合は、各文字列を最適化する助けを借りることができます(クエリ) 個別に。

次の SQL クエリは Delphi 2009 で作成されているため、形式が少し異なる場合がありますが、クエリを簡単に読み取ることができるはずです。