問題タブ [table-variable]
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.
tsql - ストアド プロシージャからテーブル変数にフィールドのサブセットを追加する方法は?
次のエラーが表示されます:「列名または指定された値の数がテーブル定義と一致しません。」
テーブル変数宣言ですべてのフィールドを明示的に宣言せずに GetData からサブセットを取得する簡単な方法はありますか?
sql-server - テーブル変数を使用すると共通テーブル式が遅くなる
次の(簡略化された)CTEを試しています。テーブル変数 () を使用すると、クエリをキャンセルする前に数分間クエリが実行されます。他のコメントアウトされたメソッドはいずれも、1 秒以内に戻ります。
WHERE 句全体を INNER JOIN に置き換えると、同様に高速になります。
テーブル変数を使用すると実行速度が非常に遅くなる理由はありますか?
FWIW: データベースには 250 万のレコードが含まれており、内部クエリは 2 つのレコードを返します。
これは、テーブル変数を使用する場合からのものです。クエリの実行には 17 分以上かかりました。
XML 形式の実行計画
一時テーブル: https://docs.google.com/open?id=0B66I-fxlyEtEZEthV3ZaWlNLWXM
テーブル変数: https://docs.google.com/open?id=0B66I-fxlyEtEbUFZa3RJejFCTkk
sql-server - 即座に実行され、テーブル変数に挿入するのに永遠にかかる SELECT ステートメント
以下のSQLコードがあります。完了するのに永遠に時間がかかりますが、 だけを実行すると、すぐSELECT DISTINCT ID, ParentID FROM Y WHERE ID IN (3,4)
に完了します。
何が起こっているのか、これは意味がありません。
sql - SQLで@tableVariableを返すか出力する
SQL Serverで@tableVariableを返したり出力したりすることは可能ですか?
たとえば、次のストアドプロシージャの場合、@ TSVテーブル変数を返すにはどうすればよいですか?
sql - テーブル変数を使用してSQLServerテーブルに複数の行を挿入する
現在SQLServer2008を使用しており、テーブル変数を使用してステートメントを作成し、テーブルに複数の行を挿入しようとしています。現在のところ、追加する情報を4つの異なる場所(2つのselectステートメント、1つの挿入と1つの更新)に挿入する必要がありますが、単一のテーブル変数を作成できるようにしたいので、入力するだけで済みます。一度情報。任意のヘルプ/提案をいただければ幸いです。
これは私が変えようとしていることの例です。
sql - テーブル変数から列の明確な名前を取得する
テーブル変数を次のように宣言できます。
次に次のように実行すると、「#468862B0」のようなテーブル名が表示されます。
その後すぐに実行すると:
テーブル変数について上記で宣言した列が表示されます。
私の質問は、これらの列を「@tv_source」の上のテーブル宣言で宣言した名前に明確に関連付ける方法はありますか?
通常のテーブルでは、実際の名前が表示されますが、上記のように、テーブル変数は16進値(btwはobject_idの16進値)に変換されます。
sql-server-2005 - カーソルを使用してテーブル変数を反復処理することは可能ですか?
SQL Server 2005 では、カーソルを使用してテーブル変数を反復処理できますか?
c# - テーブル列の値を変数に格納する (SQL Server)
しばらくの間、この問題に悩まされていました。特定の条件下で、テーブル (データベース) の列から値を保存しようとしています。
以下のコードでは、テキスト ボックス (sUserName) の入力をテーブル (aspnet_Membership) の列 (UserName) の値と比較しようとしています。これらの値が等しい場合、列の特定の Email 値を取得し、文字列変数として保存したいと考えています。
UserName (列) が sUserName (テキスト ボックス) と等しくない場合、エラー メッセージ (else ステートメント) を表示したいと思います。電子メールとユーザー名の列は同じテーブルにあります
sql - 非常に遅い DELETE クエリ
SQL のパフォーマンスに問題があります。突然の理由で、次のクエリは非常に遅くなります。
特定のテーブルの ID を含む 2 つのリストがあります。Id が 2 番目のリストに既に存在する場合は、最初のリストからすべてのレコードを削除する必要があります。
2 つのリストに 10.000 を超えるレコードが含まれている可能性があります。その場合、両方のクエリの実行にそれぞれ 20 秒以上かかります。
実行計画も、私が理解できないことを示していました。たぶん、それがとても遅い理由を説明しています:
両方のリストに 10.000 の連続した整数を入力したので、両方のリストに開始点として 1 ~ 10.000 の値が含まれていました。
@IdList2 の両方のクエリが表示されていることがわかるように、実際の行数は 50.005.000 です!!. @IdList1 は正しいです (実際の行数は 10.000 です)
これを解決する方法が他にもあることは知っています。最初のリストから削除するのではなく、3 番目のリストを埋めるようなものです。しかし、私の質問は次のとおりです。
これらの削除クエリが非常に遅いのはなぜですか? また、これらの奇妙なクエリ プランが表示されるのはなぜですか?
merge - SQL Server で変数を使用して MERGE ステートメントを作成する方法
merge
ステートメントを含むストアド プロシージャを作成しようとしています。merge
ステートメントで変数をターゲットとして使用できるようにしたいのです@TargetTable
が、テーブル変数を求められています。これは私のコードです:
@TargetTable
データの1つとして渡すことでテーブル変数を使用しようとしました@TargetTable
が、一時テーブルから使用できると思いましたが、コードの書き方がわかりません
変数としてではなく、ターゲットテーブルを示す例を見ただけです。
これを行う方法はありますか?
前もって感謝します