問題タブ [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.
sql - SQLのハードロジックを最適化するのを手伝ってください
まず、私は(私の悪い英語で)私が持っているものと私が持っている必要があるものを説明しようとします
タイムラインごとのイベントのリストを取得しました。
イベントは、ある時間に発生し、ある期間を得た離散信号1/0です。
私のイベントリストは次のようになっています
そして、これらのイベントは、 A1イベントが1である場合、A2が0であるか、A5が1である場合に、いくつかの複雑なイベントを呼び出すことができます。
私の複雑なイベント(インシデント)の構造は次のとおりです。
考えられる変更を見逃す必要はないので、何らかのイベントが発生したときに変更される可能性のある複雑なイベントを探していますが、変更された複雑なイベントがあるかどうかを知るには、この複雑なイベントに依存する他のイベントについて知る必要があります。次のステップはすべての依存イベントとその状態を1/0で取得します。これが私の試みです:
そしてそれは非常に遅く動作します、それが可能であれば私は真剣な最適化が必要です。
最も遅い(時間の95%)部分は
多分私はここで何か間違ったことをしている...
今回はEventViewからD.[Event]の値を確認したいだけです。D。[Rectime]..。
コメントリクエストによって追加されたeventview:
sql - テーブルを回転させるための SQL の最適化
テーブルを回転させる必要があるため、フィールド (ID) に何らかの値がある場合は列を作成する必要があります
カスタムクエリを作成しました:
はい...それは面白いはずですが、動作が非常に遅いです。
これを最適化するのは本当ですか....?
mysql - MySQLでMIN列値とCHAR列のSELECTが非常に遅い
これに対する答えは、別のインデックスを持つことにあると確信しています。非常に遅いクエリがありますが、次の完全な形式の場合にのみ、クエリの一部を削除すると非常に高速になります。どうすれば改善できますか?
遅い:
説明:
データベース構造:
Neo が提案したようにインデックスを更新すると、劇的な改善が得られます。
sql - クエリとクエリ - なぜこれは他のクエリよりも速いのですか?
次の 2 つのクエリがあります。元のクエリは 1 つ目で、2 つ目はわずかな「アップグレード」です。最初の実行には 1 秒近くかかり、2 番目の実行は更新ボタンから指を完全に離す前に終了します。
私の質問: なぜですか?
1 つ目と 2 つ目の唯一の違いは、1 つ目は 合体 を使用して berp.ID_PART_SESSION と比較する値を取得し、2 つ目はユニオンを使用して 2 つの select ステートメントをまとめて同じことを実行することです。
同じ結果を得るために少ない作業を行う必要があるように見えるため、最初のものはより高速である必要があると思います (合体を使用した元の理由)。実行計画の解読がいかに弱いかを考えると、2番目のクエリが最初のクエリよりもはるかに優れている理由を誰か説明してもらえますか?
対
mysql - SQL の問題 - 2 番目のテーブルのすべての参照を含むすべてのタプルを選択するにはどうすればよいですか?
ここに契約があります - ここに 3 つのテーブルがあります。
ネストされたクエリを使用して、特定のセットのタグでタグ付けされたすべての会社を取得できます。
上記のクエリは、タグ ID 12、43、または 67 を持つすべての企業を返しますが、12 AND 43 AND 67 のタグが付けられたすべての企業を取得する必要があります。
ここでクエリをやり直すにはどうすればよいですか? 私はMySQLを使用しています
php - 複雑な SQL クエリ。時間の制約に基づいてカウントで並べ替える必要があります
こんにちは、ここに次の 3 つのテーブルがあります。
以下を示すリストを取得する必要があります。
これを本当に効率的にする必要があります。どのような種類のインデックスを設定する必要があり、ここで SQL クエリをどのように作成すればよいでしょうか? これを Php を使用して表示します。行った旅行の数に基づいて並べ替えることができる必要があることに注意してください。
編集==
おっと、私のSQLに言及するのを忘れていました:
私は次のことを試しました:
それは機能しますが、実行には非常に長い時間がかかります-さらに、私の空港テーブルには30,000を超えるエントリがあり、旅行テーブルは可変であることを考慮してください。
国テーブルから国の名前を取得しているだけです-代わりにSQLで国テーブルへの参加を除外し、代わりにインデックスがIDで値が配列から国名を取得する方が良いでしょうか国の名前?
sql - ビューの動作が遅いのですが、一時テーブルにselectを使用する必要がありますか?
最後のクエリ実行時間は2500ノードを取得するのに8分であるため、深刻な問題が発生しました。そして、それは他の2つのビューの組み合わせです。
最初のビューは:
1秒と1600ノード
2番目のビューは:
3秒の実行時間と2100ノード
そして最終的なビューは
8分と2500ノード。
RowNumber AS rwnbを使用してビューの操作を高速化していますが、それでも非常に低速です。最初の2つのビューにselectintotempテーブルを使用する必要がありますか?または私はここで何か間違ったことをしていますか?
最終的な目的は、「イベント」が変更されるたびに、「イベント」のいくつかの「グループ」の値を取得することです。
sql - 同じテーブルからいくつかの「WHERE(Select ....)=value」を最適化する方法
私にとってトピック名を作成するのは難しいです。しかし、私は例を示すことができます:
ここでは、本当にそのようなものが必要なときに2つのクエリを処理しています:
しかし、SQLはタプルでは機能しないので、ここで内部結合を作成する必要がありますか?
sql-server-2005 - 選択クエリの最適化 (内部選択 + グループ)
私の現在のバージョンは次のとおりです。
しかし、動作が非常に遅いです。
基本的に内部選択では、自分の時間に近い最大時間を選択してから、この最も近い時間でグループ化します。
可能な最適化はありますか? どうにかして参加できるかもしれませんが、この最も近い日付でグループ化する方法がわかりません。
ありがとうございました
mysql - MySqlクエリの最適化
このクエリを最適化する方法があるかどうか知りたいです:
クエリログが表示されたら:
クエリプロファイル:
2)これらのテーブルには多くの挿入と更新があることを念頭に置いて、テーブルにインデックスを付ける必要があります。
Tizagチュートリアルから:
インデックスは、MySQLテーブルで有効にしてパフォーマンスを向上させることができる特別なものですが、いくつかの欠点があります。新しいインデックスを作成すると、MySQLは、テーブルに変更が加えられるたびに更新する必要がある情報の個別のブロックを構築します。これは、テーブルのエントリを絶えず更新、挿入、および削除している場合、パフォーマンスに悪影響を与える可能性があることを意味します。
インデックスを追加し、lower()、group by、およびワイルドカードを削除した後に更新します
時間: 0.855ms