私は最初のテーブルの列1の値を検索して、別のテーブルの値と一致するかどうかを確認する必要があります。SQL Serverの2番目のテーブルの各行の値を比較しますか?
これは、最初のテーブルの最後の行が比較されるまでループを継続する必要があります。
私は最初のテーブルの列1の値を検索して、別のテーブルの値と一致するかどうかを確認する必要があります。SQL Serverの2番目のテーブルの各行の値を比較しますか?
これは、最初のテーブルの最後の行が比較されるまでループを継続する必要があります。
ループが必要ありません。あなたが最初のテーブルの行が列1に基づいて一致していない反対を見つけるにはexists()
select *
from FirstTable
where exists (
select 1
from SecondTable
where FirstTable.Column1 = SecondTable.Column1
);
を使用してセットベースの操作としてこれを簡単に行うことができます、あなたはnot exists()
select *
from FirstTable
where not exists (
select 1
from SecondTable
where FirstTable.Column1 = SecondTable.Column1
);
を使用することができます
一致する行を特定して使用しないようにしたい場合は、
select FirstTable.*
, MatchFound = case when x.Column1 is null then 'No' else 'Yes' end
, x.Column1
from FirstTable
outer apply (
select top 1
*
from SecondTable
where FirstTable.Column1 = SecondTable.Column1
) as x
あなたの質問は不明です。現在のデータと予想される結果を投稿してください。また、ここに尋ねる前に何を試しましたか?どういうことですか? –
私は2つのテーブルを持っています。テーブルAとテーブルB.列ABCのテーブルBの出口が行の最後までループ内になければならない場合、値が1の列ABCをチェックしなければなりません。 – RAHUL
同じことをもう一度書くことは本当に助けにはなりません。あなたは、あなたが望むものの例を追加する必要があります。例にはテーブルの内容と結果が含まれています。あなたの質問を編集してください。 –