開始するにはSQLスクリプトに堪能ではありませんが、タスクが与えられています。で何をすべきか重複を削除するためのSQL Serverストアドプロシージャ
、表1から各顧客の重複を取得する(table1にidとID3を持っている)
私はこの部分が
SELECT *
FROM table1 t1
WHERE EXISTS (SELECT *
FROM table1 t2
WHERE t1.name = t2.name AND t2.id IS NULL)
ORDER BY Id, Name
または
SELECT t1.*
FROM table1 t1
INNER JOIN
(SELECT [Name]
FROM table1
GROUP BY t1. [Name]
HAVING COUNT(*) > 1) t2 ON t1.Name = t2.Name
ORDER BY t1.Customer, t1.Name
でなんとかする必要がありますと仮定
その後、これらの重複のIDをtable2と相互参照し、対応するID(ID2)をtable2から取得する必要があります。
私はこの部分がIDまたは一時テーブル名所定のリストに対応するとNULLがあるべきではないID3を有するTABLE1から
複製を格納する配列のいくつかの種類によって行われるべきであることを前提としてい(各重複のための最初のエントリだけを残す)顧客ごとに他の重複のすべてとともに
DELETE FROM table1
WHERE Name IN ('name1', 'name2'.......)
AND id3 IS NOT NULL
よう
何かを削除しました。
サンプルデータを追加できますか? – SqlZim
2人の異なる顧客が同じ名前を持つことはできませんか?間違いなくサンプルデータが必要です。 – VDK
はい2の顧客は、テーブル内で同じ名前を持つことができますが、エントリ内に同じ名前を複数回付けてはいけません。 ジョンデイドリーム ジョンデイドリーム ピーター・デイドリーム ピーター・デイドリーム ピーター・デイドリーム アンバーFly_co アンバーFly_co ジャッキーFly_co ジャッキーFly_co –