php / mysql Datenbank abfrage

C

coda

Guest
ph34r.gif
Hallo,
ich weiss das es total viel über mysql und PHP im netz gibt, aber als jemand der sich gerademal 3tage damit beschäftigt , bitte ich um verzeihung falls die frage ..naja :oops:

also ich habe 3 tabellen, jeweils mit den spalten:

name / adresse / telefon

Der Inhalt wird dynamisch ,durch ein Programm erzeugt.
Problem:

in der 1. Tabelle steht in Spalte / name / Müller
in der 2. Tabelle in der Spalte / name / F. Müller
und in der 3. Tabelle steht dann / name/ Felix Müller

gemeint ist jeweils die gleiche Person.
(auch adresse, telefon, reihenfolge,primarykey unterscheiden sich )

jetzt soll aber tabelle 2 und 3, mit den kompletten namen von tabelle 1 verglichen werden und eine namensgemeinsamkeit gefunden und dann ausgegeben werden.Da sich die Namen aber unterscheiden und auch verändern, komme ich nicht wirklich weiter.

Der Code müsste also Tabelle 1 auslesen (zwischenspeichern) und jeden einzeln Datensatz ( denke mal in einer while-schleife ) mit den namen von Tabelle 2 und 3 verglichen werden, nur weiss ich net wie...

Ich hoffe ihr könnt mir helfen

Danke für eure Hilfe
 
warum machst du die 3 spalten mit den unterschiedlichen schreibweisen nicht in eine einzige tabelle?

davon abgesehen sind die tabellen nicht normalisiert, da du u.a. 2 attribute in einer spalte hast: vorname und nachname

stattdessen solltest du eine spalte "vorname" und eine spalte "name" bzw. "nachname" machen
mehr nicht.
hast du beide vollen namen kannst du die anderen varianten zusammensetzen.. entweder in php oder sogar in einer sql abfrage

SELECT CONCAT(LEFT(vorname, 1),". ",nachname) AS variante2, CONCAT(vorname," ",nachname) AS variante3, * FROM...

wobei das feld variante2 (nur beim ergebnis der abfrage verfügbar.. das feld existiert nicht tatsächlich in der tabelle) dann z.b. "F. Müller" wäre und variante3 "Felix Müller"
die erste variante wäre einfach das feld "nachname"

die spalte adresse teilt man auch auf mindestens 3 felder auf: PLZ (TEXT!! wegen den führenden nullen), Ort und Straße+Hausnummer wobei man die Hausnummer auch in eine extra spalte schreiben könnte (empfehlenswert) aber straße+hausnummer kann man als ein attribut sehen
 
QUOTE (coda @ Do 16.11.2006, 10:30)Der Inhalt wird dynamisch ,durch ein Programm erzeugt.
Problem:

in der 1. Tabelle steht in Spalte / name / Müller
in der 2. Tabelle in der Spalte / name / F. Müller
und in der 3. Tabelle steht dann / name/ Felix Müller

gemeint ist jeweils die gleiche Person.
(auch adresse, telefon, reihenfolge,primarykey unterscheiden sich )

Für mich hört sich das danach an, als ob Du verschiedene Webseiten automatisch ausliest - und nun die Ergebnisse zu konsolidieren versuchst.

Das dürfte gegen die TOS der jeweiligen Webseiten verstoßen.
 
Zurück
Oben