問題タブ [query-performance]

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 投票する
5 に答える
871 参照

sql - Mysql クエリのパフォーマンス -

次のMysqlクエリがあります

結果 :

質問:

  1. このクエリの実行時間を知るにはどうすればよいですか?
  2. テーブルMdhRawAssetには 3750 万のデータが含まれています。このクエリを記述するより良い方法はありますか?
0 投票する
5 に答える
5087 参照

sql - インデックスなしでこのクエリが高速になるのはなぜですか?

新しいシステムを継承し、データを改善しようとしています。私はこの表を改善しようとしていますが、私の発見を理解できないようです。

私は次のテーブル構造を持っています:

このテーブルには、約22万件のレコードが含まれています。特定の日付よりも古い日付を持つすべてのレコードを返す必要があります。この場合、2009年12月1日。このクエリは約66kレコードを返し、実行には約4秒かかります。過去のシステムから、私がこれに取り組んできたのは高いようです。特に、テーブルにあるレコードの数を考えると。ですから、その時間を減らしたいと思います。

だから私はそれを下げるためのいくつかの良い方法は何でしょうか?テーブルに日付列を追加し、文字列dateを実際の日付列に変換してみました。次に、その日付列にインデックスを追加しましたが、時刻は同じままでした。レコードがそれほど多くないことを考えると、テーブルスキャンがどのように高速であるかはわかりますが、インデックスによってその時間が短縮される可能性があると思います。

また、月と年の列をクエリすることも検討しました。しかし、私はまだそれを試していません。また、可能であれば日付列から外したいと思います。しかし、そうでなければ私はそれを変えることができます。

どんな助けでも大歓迎です。

編集:これが私が実行しようとしているクエリであり、テーブルの速度をテストしています。私は通常列を出しますが、簡単にするために使用しました*:

編集2:それで、私は、recvddateデータを含むが、varcharではなく日付として日付列を持つテーブルを作成しようとしたと述べました。これが、上記のクエリのTicketRecvdDateTime列です。このテーブルに対して実行している元のクエリは次のとおりです。

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

sql - SQLEXISTSのパフォーマンス

EXISTSSQLが行の存在をチェックすることは理解していますが、式全体を評価しますか?たとえば、次のようになります。

このようなものよりも速くなります:

0 投票する
6 に答える
291 参照

sql - MySQL クエリのパフォーマンス

次のテーブル構造があります。

EVENT_COMMENTSテキストフィールドまたは非常に大きなフィールドを追加する必要がありますVARCHAR

このテーブルにクエリを実行する場所が 2 つあります。1 つは、すべてのイベントを一覧表示するページです (そのページでは、event_comments フィールドを表示する必要はありません)。

そして、event_comments フィールドを表示する必要がある、特定のイベントのすべての詳細をロードする別のページです。

そのイベントの event_id と event_comments を含む追加のテーブルを作成する必要がありますか? または、現在のテーブルにそのフィールドを追加する必要がありますか?

言い換えれば、私が求めているのは、テーブルにテキスト フィールドがあるが、そうでないSELECT場合、テーブルへのクエリのパフォーマンスに影響するかということです。

0 投票する
3 に答える
2562 参照

sql-server - SQLServerの非クラスター化インデックスが実行プランに表示されることはありません

tbl_event非クラスター化インデックスで呼び出され、次のようIDX_Event_FolderIDX_Event_Time定義されたデータベーステーブルがあります。

次の簡単なクエリを実行し、実行プランを真下に表示しました。

クエリ1:

クエリ1の実行プラン

クエリ2:

クエリ2の実行プラン

私の質問は、なぜnobjectidのインデックスが使用されないのですか?これらのselectステートメントのwhere句でnobjectidが指定されている場合、インデックスのシークまたはスキャンが行われると思います。この分析についての私の理解は間違っていますか?

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

sql - MySQLで指定された基準を満たすx個のランダム行を取得するための最適化された方法

いくつかの基準を満たすデータベーステーブルからx行を取得する必要があります。ORDER BY RAND()を使用してMySQLからランダムな行を取得できることを知っています。

同じことを行うための最も最適化された方法を探しています{システムリソースの使用率を低くすることが最優先事項です。次に重要な優先事項は、クエリの速度です}。また、テーブルデザインでは、「猫」をINDEXにする必要がありますか?

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

mysql - これらの列にインデックスを作成する必要がありますか?

データベースにいくつかの列があり、ほとんどがvarchar255です。アクセスは1回だけですが、ログインしているユーザーのページの読み込み/リクエストごとに1回読み込まれます。(ほとんどの場合、ユーザーの設定などが含まれています)。

私の質問は、これらの列にインデックスを作成する必要があるかどうかです。一度だけ読み取ってこれらの列のように格納するのではなく、複数のクエリで使用される他の列のインデックスをすでに持っています。

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

sql-server - SQLのパフォーマンスの問題

SQLServer2000に2400万レコードのデータベースがあります。

このクエリを実行すると

そしてこれさえ

それは非常に高速に実行され、最初の10秒で3500レコードを返します。これstarttimechar(30)データベースにあることに注意してください。

しかし、このクエリを実行すると、10〜60秒で32レコードが返されます

::@MinDateの値は2011-05-1500:00:00.000です

starttime私のデータベースで索引付けされていることに注意してください

私の問題は何ですか?

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

performance - ms-access クエリのパフォーマンス

次のようなレコード ソースを持つサブフォームがデータシート ビューに表示されています。

myFunction()は、MySQL ストアド プロシージャを呼び出す vba 関数です。

問題は、myFunction()あまりにも頻繁に呼び出されることです。たとえば、レコードが変更されていない場合でも、フォーカスが同じレコード内の列から列に移動するたびに呼び出されます。これが起こらないようにする方法はありますか?

0 投票する
3 に答える
135 参照

sql - 2 つのクエリを 1 つにマージする

1 つのクエリでこれを実行できるかどうかはわかりませんが、実行したいと思います。

次のようなすべてのレコードが必要です。

また、この条件に該当するレコードも除外したいと思います。

更新:(混乱して申し訳ありません)

  • したがって、field_1 が 1、2、3、または 4 に等しく、日付のタイムスタンプが今日の場合、レコードを表示する必要があります (結果に追加)。
  • また、field_1 が 1、2、3、または 4 に等しく、日付のタイムスタンプが今日よりも小さい場合 (結果から削除します)。

両方の結果を 1 つのクエリにまとめるアイデア

注(これが違いを生む場合):

  • field_a の値は a ~ z、1 ~ 99 (2 文字のみ) です。