私が参加内側のためのSQL Serverのクエリを持っている...2つのテーブルの内部結合に参加しないすべてのレコードを検索しますか?
SELECT *
FROM tableA
INNER JOIN tableB on tableA.my_id = tableB.my_id
は、どのように私はこの中で一致しなかったすべてのレコードが参加見つけるだろうか?
私が参加内側のためのSQL Serverのクエリを持っている...2つのテーブルの内部結合に参加しないすべてのレコードを検索しますか?
SELECT *
FROM tableA
INNER JOIN tableB on tableA.my_id = tableB.my_id
は、どのように私はこの中で一致しなかったすべてのレコードが参加見つけるだろうか?
TABLEB FROM 2つの表を結合した後、WHERE句を使用して、各表の主キー値でNULLをチェックすることによって、一致しない行のみに結果をフィルタリングします。
全外は、全ての結合されたテーブルですべての行は、それらが一致しているか否か、含まれている参加します。
SELECT a.pk, b.pk
FROM tableA a
FULL JOIN tableB b ON a.pk=b.fk
WHERE
a.pk IS NULL
OR b.pk IS NULL
Worked、ありがとう! – a1234
SELECT A2.* FROM TableA A2
WHERE A2.my_id NOT IN
(Select tableA.my_id FROM
tableA
inner join
tableB
on tableA.my_id = tableB.my_id)
は、あなたが同様にあなたがUNION ALL 2つのクエリに応じて可能性があるテーブルのすべてのレコードをしたい場合は、別途表B
SELECT B2.* FROM TableB B2
を開始上記を行うことができますテーブルのフィールド構造が同じか、選択したフィールドを指定する方法 - データで何をやっていますか?あなたがにFULL JOINを使用することができますSELECT *
UNION(TABLEBからmy_id SELECT)NOT IN my_id ALL
SELECT *にtableA FROM(にtableAからmy_idを選択)NOT IN my_id
どのテーブルからレコードを取得しますか? – kicken
両方のテーブルのレコードが一致しないようにしたいと思います。 (私は非常にMSSQLに新しいです)。 – a1234