"Reinigung" einer grossen Datenbank

06/11/2007 - 13:22 von piotr.pilarek | Report spam
Guten Tag

Ich wende mich an Euch mit einer Bitte. Wir machen Marktforschung
Field Research für einen grossen Kunden in PL (muss ein bischen
diskret sein). Er liefert uns Stàdteweise Adresslisten seiner Kunden
(Energie) und unsere Interviewer müssen dann die Strassen systematisch
abgehen.

Diese Listen sind aber nicht genau, es hat viele Fehler und ich möcht
ein einfaches Pogramm schreiben, das die grösste Fehler repariert. Ich
mache hier Beispiele deutsch, weil ihr die polnischen Hiroglyphen
vielleicht hier gar nicht sehen würdet. Das ganze möchte ich machen
für Name, Strasse und Stadt, aber ich mache hier das Beispiel nur für
Name.

Ich mache eine erste Gruppierungsabfrage auf Name und zàhle, wie oft
er vorkommt, also hier ein (dummes) Beispiel:

Müllar 1
Muller 275
Müller 28568
...

Was ich jetzt möcht, ist eine Funktion, welche bei gleicher Anzahl von
Zeichen (len ([kname]) ist gleich), heraussucht, wo nur ein Zeichen
anders ist und die Namen auf den wahrscheinlichsten der verschiedenen
Varianten "updated", also sagen wir mal die Variante, welche
mindestens 95 % aller Varianten ausmacht. Also hier oben wàre das dann
klar der "Müller". Vielleicht habt ihr das Gefühl, das das Unsinn ist,
aber mit den (falschen) polnischen Sonderzeichen stimmt dann eben die
Sortierung nicht mehr und wir können die Bearbeitungslisten nicht gut
erstellen (Strassenweise und Namenweise). Gut ist, das im polnischen
i.d.R. keine Doppellaute gibt, also keine Fehler Müler anstatt
Müller.

Man muss wissen, das Material ist z.T bis 30 Jahre alt und es haben
sich auch gewisse Regeln geàndert. Mit dieser Massnahme kann ich mal
erst einiges ausputzen, nachher kommt Handarbeit.

Ja, wichtig es zu wissen, es kommen in den nàchsten Monaten ca. 13
Mio. Adressen auf mich zuNicht auf einmal, aber trotzdem!

Ich habe hier schon so viel gutes über Access gesehen und mache auch
selbst kleinere Sachen, aber das übersteigt meine Fàhigkeiten. Kann
mir jemand helfen?

Ich überlege auch, ob das sinnvoll macht, für Namen und Strassen
nachher eigene Tabellen zu erstellen, weil diese sehr oft sich
wiederholen und die Datenbanken damit viel kleiner würden.

Ich wollte das programmieren lassen - aber der Kunde (ist so was wie
ein Staatsbetrieb...) will das nicht bezahlen, er sagt, das kann man
von Hand machen, aber das ist so eine Sch...arbeit!

Danke für Eure Hilfe, wenn es geht!

Breslau grüsst!

Piotr Pilarek, Student
 

Lesen sie die antworten

#1 Mark Doerbandt
06/11/2007 - 13:37 | Warnen spam
Hallo,

:

Ich mache eine erste Gruppierungsabfrage auf Name und zàhle, wie oft
er vorkommt, also hier ein (dummes) Beispiel:

Müllar 1
Muller 275
Müller 28568
...

Was ich jetzt möcht, ist eine Funktion, welche bei gleicher Anzahl von
Zeichen (len ([kname]) ist gleich), heraussucht, wo nur ein Zeichen
anders ist und die Namen auf den wahrscheinlichsten der verschiedenen
Varianten "updated", also sagen wir mal die Variante, welche
mindestens 95 % aller Varianten ausmacht.



ich wuerde hier mit Soundex arbeiten (bitte danach in dieser Gruppe
hier googeln). Du kannst ja eine Abfrage ueber alle DISTINCT
vorkommenden Namen machen. In einer Schleife ueber diese wuerde ich
dann mit Soundex nach aehnlichen Namen suchen und dann die von Dir
genannten Haeufigkeiten zaehlen. Dann kannst Du mit einer
Aktualisierungsabfrage einen gefundenen falsch geschriebenen Namen dem
richtigen zuordnen.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen