php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.11.2006, 09:38  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard 2 Tabellen vergleichen

Servus zusammen.

Ich hab mal eine eigentlich gespaltene Frage:

Zunächst das Problem.

Ich habe eine Datenbank mit exakt 26150 Datensätzen. Diese Datenbank enthält Adressen Telefonnummern etc. Nun habe ich neue Datensätze bekommen. Ebenfalls mit Adressen Telefonnummern etc ... aber die ist natürlich Größer als unsere DB

Ich soll nun diese beiden Datensätze vergleichen und aus den neuen Datensätzen nur die übrig lassen die nicht in unserer alten Datenbank sind, damit wir unsere DB aktualisieren können.

An sich kein Problem aber die Datensäte haben andere Strukturen und schreibweisen der verschiedenen Spalten.

z.B: unser DS-Telefon: 1234/12345698 oder 1234 465499 (kann variieren leider )
der neue Datensatz kann aber auch so aussehen: 1233-4654-456-0 oder 1231/456-45-4

So meine Überlegungen bisher:

Ich könnte das ganze via PHP Script laufen lassen (dauert eeeeewig) zumindest so wie ich dsa machen will
Mit blöden 2 While-Schleifen einfach beide DS durchlaufen und mittels
PHP-Code:
ereg_replace("[^[:digit:]]"""$ds_neu['tel']) ?> 
die telefonnummern vereinheitlichen.

Tja ich sehe das aber nicht als Optimallösung.

Mit einer REGEXP in SQL hab ich diese Abfrage noch nicht nachbauen können.

Gibts da eine andere Lösung ? vllt. sogar mit ner MySQL Abfrage ?
Da ich diese verschachtelten Schleifen an sich umgehen wollte
M3g4Star ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.11.2006, 10:27  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Hallo,
die Lösung ist doch gut. Einfach alles was keine Zahl ist aus dem Feld entfernen und vergleichen. Wenn es Unterscheidungen gibt ist der Datensatz zu aktualisieren.

Und dass 26k Datensätze zu bearbeiten mit PHP etwas länger dauert ist ja auch klar.

Soetwas wie preg_replace() für MySQL kenne ich nicht, aber ich bin eigentlich auch nur Anfänger in Sachen MySQL.
Zergling-new ist offline   Mit Zitat antworten
Alt 17.11.2006, 11:44  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Eine Möglichkeit wäre es, den Vergleich der beiden Tabellen so ablaufen zu lassen, dass zunächst alle -, / und Leerzeichen entfernt werden, so dass nur noch Zahlen existieren:
Code:
WHERE REPLACE(REPLACE(REPLACE(t1.spalte, '-', ''), '/', ''), ' ', '') = REPLACE(REPLACE(REPLACE(t2.spalte, '-', ''), '/', ''), ' ', '')
Sonderlich performant wird auch diese Lösung nicht sein. Dafür könntest du den Vergleich aber direkt auf Datenbankebene abwickeln.
xabbuh ist offline   Mit Zitat antworten
Alt 17.11.2006, 20:10  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Andere Frage, warum verwirfst du nicht die alten Daten und fügst die neuen hinzu?
Zergling-new ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
2 Tabellen vergleichen und Rest ausgeben Seabear Datenbanken 2 12.03.2008 05:54
Tabellen für Vokabeltrainer anlegen... anonym01 PHP Tipps 2008 9 03.03.2008 21:18
PHP Array in MYSQL Tabellen schreiben Matt Datenbanken 1 26.02.2008 19:43
Daten in einem Script aus 2 Tabellen holen/ vergleichen?? miwius Datenbanken 2 03.02.2007 23:26
2 Tabellen vergleichen Datenbanken 1 30.03.2006 19:57
Join-Abfrage über mehrere Tabellen sinai Datenbanken 3 04.02.2006 13:05
einträge aus 2 tabellen sortieren Tschuu Datenbanken 11 20.12.2005 08:21
[Erledigt] abfrage mehrere tabellen PHP Tipps 2005-2 3 31.10.2005 21:57
[Erledigt] 2 Tabellen vergleichen Datenbanken 2 04.08.2005 13:41
Zwei Tabellen vergleichen Datenbanken 9 07.07.2005 14:34
Zwei Tabellen vergleichen Datenbanken 1 04.07.2005 10:16
eine spalte von 2 tabellen vergleichen Sclot PHP Tipps 2005 2 22.03.2005 19:00
2 Tabellen auf gleichen Feldinhalt zu prüfen Datenbanken 6 23.02.2005 12:02
[Erledigt] Selectanfrage an eine Datenbank,aber aus mehreren Tabellen Datenbanken 2 26.10.2004 07:23
[Erledigt] fulltext suche priorität von tabellen setzen Datenbanken 1 09.08.2004 15:26

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
2 tabellen vergleichen, mysql tabellen vergleichen, mysql 2 tabellen vergleichen, php 2 tabellen vergleichen, mysql zwei tabellen vergleichen, http://www.php.de/datenbanken/42842-2-tabellen-vergleichen.html, php mysql tabellen vergleichen, telefonnummer vereinheitlichen replace, php inhalt von zwei datenbank tabellen vergleichen, php 2 datenbanken vergleichen, sql telefonnummer vereinheitlichen, php tabellen vergleichen, mysql inhalt von 2 tabellen vergleichen, mysql tabellen vergleichen php, inhalte aus zwei datenbanken vergleichen, php mysql tabellen spalten vergleichen, 2 spalten aus 2 tabellen vergleichen, php zwei datenbanken vergleichen, vergleich inhalt spalten in 2 tabellenblättern - neue einträge, mysql 2 tabellen inhalte vergleichen

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.