問題タブ [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 投票する
7 に答える
194 参照

sql - SQL (任意) クエリの最適化に関する洞察のリクエスト

膨大な量の情報が結合されているため、クエリが特に遅くなります。ただし、id in (select id from table) の形で where 句を追加する必要がありました。

次のことから何か利益があるかどうか、さらに差し迫ったことで、望ましい結果が得られるかどうかを知りたい.

代わりに:

更新: MySQL より具体的にはできません。申し訳ありませんが、テーブルは実質的に 7 つの異なるテーブル間の結合です。* の使用は例です

編集、b が選択されない

0 投票する
9 に答える
2490 参照

tsql - INまたはORの方が速いのは何ですか?

T-SQLでは何が速いのですか?

または

私の場合、x、y、zはストアドプロシージャの入力パラメータです。そして、DELETEステートメントとINSERTステートメントのパフォーマンスを最大限に発揮させようとしています。

0 投票する
5 に答える
1584 参照

sql - 内部結合と順序付けを使用して SQL クエリを最適化する

次のクエリを最適化しようとしていますが、成功しません。一時テーブルとファイルソートを防ぐためにインデックスを作成できる場所はありますか?

0 投票する
5 に答える
192 参照

sql-server - SQL Server sproc クエリの最適化

次のようなレポートのデータを生成するアプリケーションがあります。

クエリは非常に長くなる場合があり、最適化したいと考えています。

サーバー上でクエリ アナライザーを実行する権限がありません (そして、多くの場合、クエリ アナライザーの提案を使用しない方がよいと読みました)。最長の sproc の実行には約 35 秒かかります。

周りを読んで、高度なクエリ最適化のために避けるべきことは次のとおりです。

  • 選択する *
  • 存在する
  • 明確
  • カーソル
  • 持つ

当面のタスクについていくつか質問があります。

  • Select * を Select colA, colB ... に変更すると、どのくらいの違いが見られますか? それは本当に苦労する価値がありますか?
  • if exists( ... ) を最適化するにはどうすればよいですか? if( Select Count(query ) > 0 ) は適切な最適化ですか?
  • 本当にテーブル内のすべての列を返す場合、 Select * を使用しても問題ありませんか?

これらのクエリは非常に長くてひどいので投稿したくありませんが、他にどのような提案を提供できますか? 再利用可能な関数と一時テーブルを可能な限り使用して、脳とサーバーの両方の負担を軽減しようとしています。

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

mysql - MySQLでインデックスマージを正常に機能させる人はいますか?

設定:

足りないものはありますか?

アップデート

バージョン

MySQLでインデックスマージを正常に機能させる人はいますか?

ここで成功した話を見てうれしいです:)

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

mysql - MySQLで最大のNレコードから効率的に(サブクエリを使用せずに)ランダムレコードを選択する方法は?

上記は毎回一時テーブルを作成する必要があり、効率的ではないため、資格がありません。

適切に行う方法は?

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

mysql - MySQLでランダムレコードを効率的に選択するにはどうすればよいですか?

上記は効率的とは言えませんが、どうすれば適切に行うことができますか?

アップデート

答えに記載されている解決策を使用しても、まだ役に立たないようです。

0 投票する
7 に答える
5344 参照

rdbms-agnostic - アマチュアのためのデータベース最適化技術

基本的な最適化手法のリストを取得できますか(モデリングからクエリ、インデックスの作成、ビューからクエリの最適化まで)。これらのリストを、回答ごとに1つのテクニックとして用意しておくと便利です。趣味の人として、これはとても便利だと思います。ありがとう。

また、曖昧すぎないように、MySQLやOracleなどのメインストリームDBを使用しており、DBには最大10個のテーブルに500,000〜1m程度のレコードが含まれ、一部には外部キー制約があり、すべて最も一般的なストレージエンジン(例:InnoDB for MySQL)。そしてもちろん、PKなどの基本はFK制約と同様に定義されています。

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

sql-server - SQL/XMLを使用したデータベースのクエリの最適化。提案されたリソース?

この質問は理論的かつ実用的です。クエリの最適化に役立つリソースを示す結果があれば幸いです。

SQLXMLフィールドに格納された大量のデータを格納する大規模なSQLデータベースがあります。XMLを直接クエリするのは十分な速度ではありません。

SQLXMLの最適化に関するMSDNの記事( http://msdn.microsoft.com/en-us/library/aa902661(SQL.80).aspx )をいくつか見てきましたが、検索可能なxmlフィールドのインデックス作成が増えることを認識しています。検索速度。

この環境または一般的に、データベースを最適化するために特に役立つ追加のリソースを誰かが推奨できますか?いつものように、私はすべての助けに感謝します

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

sql - SQLServer2005以降で列の合計を取得するための最も最適化された方法

さまざまな州で使用されるアプリケーションのレポートをいくつか作成しています。データベースは非常に大きくなる可能性があります。列の合計を取得するための最良の方法を知りたいのですが。

現在、次のようなSQLがあります。

ご覧のとおり、列は2回あります。1つの例では、それらを追加して合計を表示し、もう1つの例では、レポートに必要な個々の値を表示します。

これはSQLの非常に小さなサンプルであり、20以上の列があり、それらの列のうち4つ以上が時々合計されます。

いくつかの@Parametersを宣言し、各列を@Parameterに等しく設定することを考えていたので、列の合計を表示するために必要な@Parametersを合計することができます。IE:SET @Total = @c1 + @c2

しかし、SQL Serverエンジンは、そのように列が複数回存在することさえ気にしますか?これを行うためのより良い方法はありますか?