Michał Kowalski Bazy danych
Temat: [SQL Server] Usuwanie duplikujacych się danych klienta
Witam,Mam tabelę w której występują duplikaty klientów, deduplikację chcę wykonać po PESEL, REGON i NIP lub po dowolnej kombinacji, ponieważ nie zawsze wszystkie pola są uzupełnione.
Chcę zrobić oceny dla rekordów, po 1 punkcie za każde niepuste pole.
,case when len(isnull(pesel,''))>10 then 1 else 0 end+
case when len(isnull(regon,''))>8 then 1 else 0 end+
case when len(isnull(nip,''))>9 then 1 else 0 end suma
Informacje o id rekordów które zostały usunięte chce przechowywać w osobnej tabeli.
Pesel | REGON | NIP
121 |___ | ___
121 | 25 | ___
____ | 25 | 12
W efekcie chciałbym otrzymać jeden rekord z danymi:
Pesel | REGON | NIP
121 | 25 | 12
Przy okazji czy istnieje prosty sposób na nietraktowanie Peseli
1111111111111
2222222222222 jako peseli
na teraz przychodzi mi pominięcie peseli gdzie pierwszy_znak=drugi
drug!=trzeci i tak do 11-tego i pomięcie takich przypadków.
Czy macie coś co naprowadziło by mnie na najskuteczniejsze rozwiązanie problemu.Ten post został edytowany przez Autora dnia 26.07.16 o godzinie 15:40