私は2つのSQL2008テーブルを持っています.1つは新しいデータを含む "インポート"テーブルで、もう1つはライブデータを持つ "デスティネーション"テーブルです。両方のテーブルは類似していますが、同一ではありません(CRMシステムによって更新された宛先テーブルにはさらに多くの列があります)が、両方のテーブルにはTel1、Tel2、Tel3の3つの「電話番号」フィールドがあります。電話番号のが既に宛先テーブルに存在するインポートテーブルからすべてのレコードを削除する必要があります。2つのテーブル間で重複を見つける
私は(今でテストするだけでSELECT)単純なクエリ一緒にノックしようとしました:
select t2.account_id
from ImportData t2, Destination t1
where
(t2.Tel1!='' AND (t2.Tel1 IN (t1.Tel1,t1.Tel2,t1.Tel3)))
or
(t2.Tel2!='' AND (t2.Tel2 IN (t1.Tel1,t1.Tel2,t1.Tel3)))
or
(t2.Tel3!='' AND (t2.Tel3 IN (t1.Tel1,t1.Tel2,t1.Tel3)))
を...しかし、私は、これはほぼ確実に物事を行う方法ではありません注意してくださいよ、特にそれは非常に遅いです。誰かが私を正しい方向に向けることができますか?
感謝 - これはすばらしい、非常に速く働き、私は実際にそれが何をするのか理解しています:) – KenD
私はこの質問から少し余分なものを絞るためにすべての組合のためにそれを変更するでしょう:) – luckyluke