問題タブ [cross-apply]

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

sql - 表演算子 APPLY を使用する場合

table operator を理解しようとしていますAPPLY

次に例を示します。

私の主なハードルは、いつ使用するかを理解することAPPLYです。だから、実装された
を使用して上記と同じ結果を得るのがどれほど難しいのだろうかと思いますか? クエリを大幅に短くしたり、読みやすくしたりしますか ? この例が を使用する大きな利点を示さない場合、使用する利点がある明確な例は何ですか?standard sqlsql-server 2005
APPLY
APPLYAPPLY

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

oracle - キーワードの欠落エラーを与えるクロス適用

以下のクエリでは、キーワードの欠落エラーが発生しています..

ここに私の機能があります:

どこが間違っているのかわかりません。私はこれに本当に慣れていません。

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

tsql - sp_executesql とユーザー定義のスカラー関数

以下の表では、次のようないくつかの条件を保存しています。

ここに画像の説明を入力

次に、通常、2 番目のテーブルには次のレコードがあります。

ここに画像の説明を入力

そして、必要なのは、正しい条件を使用してこれらの値を比較し、結果を保存することです (追加の列で、false の場合は「0」、true の場合は「1」としましょう)。

これをストア プロシージャで実行し、基本的に数から数百のレコードを比較します。

可能な解決策は、動的ステートメントを構築する各行に sp_executesql を使用することです。もう 1 つは、独自のスカラー関数を作成し、クロス適用を使用して簡単な行に対して呼び出すことです。

どちらがより効率的な方法か誰にもわかりますか?

注: これに答える最善の方法は、2 つのソリューションを作成してテストすることであることはわかっていますが、キャッシングや SQL 内部最適化などの他のものに基づいて、この答えが得られることを願っています。これはより大きな問題の一部にすぎないためです。

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

performance - CROSS APPLY が実行合計に対して遅すぎる - TSQL

CROSS APPLY の実行が遅すぎるため、以下のコードを参照してください。

CROSS APPLY を削除して、より高速に実行される何かを追加するにはどうすればよいですか? SQL Server 2008 R2 を使用していることに注意してください。

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

sql-server-2008 - ピボットされた列とピボットされていない列が複数あるTSQL PIVOT?

私はこのサンプルデータを持っています:

私はこの形式でそれを持っている必要があります:

次のコードを試してみましたがNULL、あるべきではないいくつかの値を取得し、出力が間違っています。私はまだクロス適用とピボットの一般的な使用法を理解しようとしています。

これを解決するのに役立つ助けがあれば大歓迎です。

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

sql - TOP、DESC、および CROSS APPLY を使用すると、このクエリがどのように高速化されますか?

この質問に関連: WHERE 句と ON 句の実行はどのような順序で行われますか?

私はAPPLYについてこのページを読んでいました:

http://sqlblog.com/blogs/alexander_kuznetsov/archive/2009/07/07/using-cross-apply-to-optimize-joins-on-between-conditions.aspx

また、CROSS APPLY、TOP、および DESC がこのクエリを高速化する方法がわかりません。

元のクエリ:

より高速なクエリ:

わからないので具体的に何を質問すればいいのかわからない。

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

sql - SQL Server の相互適用が機能していませんか?

http://sqlfiddle.com/#!3/78273/1

内部結合と似ていますが、関数で動作するため、クロス適用を学習しようとしていました。

上記のクエリでは、注文 d.id desc は 30 である最上位の 1 番目の ID のみを提供し、dept id = 30 の従業員を返す必要があるため、dept=30 のみを取る必要があると想定していますが、すべての行とすべての深い。

クエリの何が問題なのか、または相互適用の概念の解釈が間違っています。

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

sql - SQL Server 2000 で、入力パラメータをテーブルとして受け取る関数を作成することはできますか?

以下に、データを操作して新しいデータベース テーブルを生成するサンプル データがあります。

【サンプルデータ画像】

以下の画像のように出力したい:

[必要な出力]

これは、データを取得するために使用される私のクエリです。

注: SQL Server 2000 を使用しているため、CTE やT-SQL の機能を使用できませんCROSS APPLY

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

sql - 複数の条件で XML フィールドをフィルタリングする方法

私はそのようなテーブルを持っています:

XML フィールドには、 C# の XML 表現が含まれていますDictionary<int, string>。例:

私がしたいのは、XmlField に含まれるすべての行 (キー = 1、値 = 'Web') および (キー = 2、値 = 'Email') を含むすべての行を選択することです。

これまでのところ、1 つの一意のキーと値が一致する行のみをフィルタリングできました。

追加するAND (x.fields.value('(key/int/text())[1]', 'int') = 2 AND x.fields.value('(value/string/text())[1]', 'varchar(MAX)') = 'Email')と、何も返されません (非常に論理的に)。

CROSS APPLYまた、単純なフィルターを使用しないで実行しようとしました。

ただし、その後は のように動作ORし、xml に (1, Email) と (2, Web) などの 2 つのキーと値のペアが含まれる行を返します。