Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

frage zu tabellenvergleich

0 views
Skip to first unread message

Mathias Fiedler

unread,
Jan 6, 2010, 2:01:57 AM1/6/10
to
Hallo,

eine Frage zum Vergleich von Tabellen. Ich habe als ausgangspunkt eine text
Datei mit ca. 50.000 Eintr�gen. Das sind Kategorieen. Die einzelnen
Eintr�ge sind �ber tabs einger�ckt und bezeichnen somit die Unterkategorien
(also z.B.
Handwerk
B�cker
Fleischer)
Die einzelnen Zeilen enthalten zus�tzlich noch weitere Informationen zu den
kategorien, die ebenfalls noch aufgesplittet werden. Pro Kategorie
entstehen so bis zu 5 Datenbankfelder.
(Beispiel
B�cker Nr.125 deutsch kleinbetrieb bemerkung )
Diese lese ich in eine Datenbank ein. Soweit so gut. Nun kann sich die
Ausgangsdatei aber st�ndig �ndern. Deshalb lese ich die Datei zuerst in
eine tempor�re Tabelle und kopiere diese dann in die eigentliche Tabelle.
Das macht nat�rlich so allein noch keinen Sinn. mein anliegen ist der
Vergleich der tempor�ren Tabelle mit der Originaltabelle um �nderungen
kennzeichnen zu k�nnen. Ich muss ja bei bereits verwendeten kategorien,
darauf hinweisen, wenn die pl�tzlich ge�ndert oder entfernt werden. Neue
kommen halt einfach dazu, das ist kein Problem. Nun kann ich nat�rlich die
Datenbank zeilenweise vergleichen, das dauert aber ewig.
Die Frage ist nun, wie kann ich performanceg�nstig die beiden DB�s
vergleichen udnd die Unterschiede nat�rlich auch gleich noch auswerten?
M. Fiedler

Andreas Treichel

unread,
Jan 6, 2010, 7:58:09 AM1/6/10
to
> mein anliegen ist der Vergleich der temporären Tabelle mit der
> Originaltabelle um Änderungen kennzeichnen zu können

Mit einem LEFT JOIN und dem Vergleich IS NULL auf die Spalte in der
neuen Tabelle bekommst du die gelöschten Einträge. Die neuen Einträge
mit RIGHT JOIN und die aktualisierten Einträge per INNER JOIN.

Mathias Fiedler

unread,
Jan 7, 2010, 4:21:23 AM1/7/10
to
Am Wed, 6 Jan 2010 13:58:09 +0100 schrieb Andreas Treichel:

>> mein anliegen ist der Vergleich der tempor�ren Tabelle mit der
>> Originaltabelle um �nderungen kennzeichnen zu k�nnen


>
> Mit einem LEFT JOIN und dem Vergleich IS NULL auf die Spalte in der

> neuen Tabelle bekommst du die gel�schten Eintr�ge. Die neuen Eintr�ge
> mit RIGHT JOIN und die aktualisierten Eintr�ge per INNER JOIN.

Danke, mal sehen, was ich damit machen kann.

Mathias

0 new messages