Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Alternative zu left join
zurück: Aktualisierungsabfrage datenbankübergreifend weiter: Nachträglich Back End Tabellenpfad im Frontend ändern Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Tomy2011
Gast


Verfasst am:
24. Aug 2011, 21:22
Rufname:

Alternative zu left join - Alternative zu left join

Nach oben
       Version: Office 2010

Hallo Zusammen,

ich Suche eine alternative zu Left join:
ich habe mir folgendes überlegt:

Tabelle tab1: a1, a2, a3, a4
Tabelle tab2: b1, b2, b3
Code:
SELECT a1, a2, a3, a4, b2, b3
FROM   tab1
       LEFT JOIN tab2
       ON a1=b1;
Ist es vergleichbar mit:
Erweitererung der Tabelle tab1 um die folgenden Spalten: b2 und b3 und dann:
Code:
UPDATE tab1, tab2
SET    tab1.b2=tab2.b2
AND    tab1.b3=tab2.b3
WHERE  tab1.a1=tab2.b1
? Oder gibt es irgendwo einen Denkfehler?

Danke!

Tomy
Marmeladenglas
komme zurecht


Verfasst am:
25. Aug 2011, 08:07
Rufname:


AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

Hi,
- ich frage mich nach dem Sinn
- ist das ganze eine Rückführung 2-er vermutlich korrekt normalisierter Tabellen in die nicht normalisierte Form, deren Ergebnis so aussieht wie das Ergebnis einer OUTER-join-Abfrage.
Dem ganzen fehlt die Dynamik. Eine Abfrage mit dem JOIN würde dir immer aktuelle Ergebnisse liefern. Die "starre" Tabelle immer nur den Zustand seit der letzten Aktualisierung.
Tomy2011
Gast


Verfasst am:
25. Aug 2011, 08:35
Rufname:

AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

Hallo Marmeladenglas,

die beiden Tabellen sind korrekt normalisiert.
Bei der Variante ohne "left join" gibt es einen erheblichen Performanz-Gewinn bezüglich der Ausführungszeit. Deshalb die Frage.
Die Dynamik können wir auslassen, da es um eine einmalige Abfrage geht.
Marmeladenglas
komme zurecht


Verfasst am:
25. Aug 2011, 08:42
Rufname:

AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

Hi,
ist denn b1 eindeutig ?
Sprich ist das der Primärschlüssel in T2 der mit dem Primärschlüssel in T1 korrespondiert ?
Wenn ja, dann liegt eine 1:1-Beziehung vor. Insofern kannste die Tabellen eh zu einer zusammenführen.
Insofern wäre wohl der kürzere Weg eine Tabellenerstellungsabfrage mit der Outer-Join-Abfrage zu erstellen unter Hinzunahme der Felder aus T2.
Marsupilami72
Office-VBA-Programmierer


Verfasst am:
25. Aug 2011, 09:03
Rufname:
Wohnort: Goslar

AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

Von wie vielen Datensätzen reden wir denn? Und welchen Datentyp haben die verknüpften Felder?
Tomy2011
Gast


Verfasst am:
25. Aug 2011, 09:32
Rufname:

AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

in wirklichkeit aktualisiere ich nicht die Tabelle tab1, sondern mache daraus eine Kopie und füge hinzu die zu aktualisierten Spalten.
Der Hintergrund ist folgendes:
tab1: 2 000 000 Zeilen
tab2: 1 700 000 Zeilen.
Mit left join --> 2 000 000 * 1 700 000 = 3 400 000 000 Zeilen zu durchlaufen (intern von der Abfrage). Mit Index wäre es kein Problem und würde auch schnell laufen.
Aber: ich arbeite gerade mit MySQL (entschuldigung das ich es hier poste, aber es geht um die Logik in der Abfrage) und habe die beiden Tabellen indiziert. MySQL benutzt aber die angelegten Indexen (in der left join Abfrage) nicht. Konzequenz: selbst nach 5 Stunden ist die Abfrage nicht durch.
Mit einer Aktualisierungsabfrage kriege ich das ganze in weniger als 5 Sekunden hin.
Die Frage war nur ob die beiden geposten Abfragen äquivalent hinzunehmen wären und ich da keinen Denkfehler drin hätte.
Nachtrag: Tomy2011 am 25. Aug 2011 um 08:40 hat folgendes geschrieben:
Ergänzung:
tab1.a1 ist eindeutig
tab2.b1 ist nicht eindeutig
Marmeladenglas
komme zurecht


Verfasst am:
25. Aug 2011, 10:00
Rufname:


AW: Alternative zu left join - AW: Alternative zu left join

Nach oben
       Version: Office 2010

Hi,
daran wird es wohl scheitern.
Gibt es b1 mehrfach wird mit dem letzten DAtensatz von b1 T1 geupdatet.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: JOIN auf selbe Tabelle 0 Gast 388 08. Dez 2008, 19:00
lady111 JOIN auf selbe Tabelle
Keine neuen Beiträge Access Tabellen & Abfragen: Datewert / Datevalue Problem, alternative oder lösung?! 2 gott50000 1513 13. Nov 2008, 12:49
gott50000 Datewert / Datevalue Problem, alternative oder lösung?!
Keine neuen Beiträge Access Tabellen & Abfragen: Bitte um Hilfe bei Join Abfrage 0 Anda 275 31. Okt 2008, 14:46
Anda Bitte um Hilfe bei Join Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: SQL Abfrage Join 1 neuling75 1087 28. Mai 2008, 14:46
MAPWARE SQL Abfrage Join
Keine neuen Beiträge Access Tabellen & Abfragen: Aktualisierungsabfragen mit Bedingung und Join 8 Falcon 1909 03. März 2008, 16:57
Falcon Aktualisierungsabfragen mit Bedingung und Join
Keine neuen Beiträge Access Tabellen & Abfragen: Left join auf 2Spalten, ausgabe in einer Spalte 1 nowit 703 19. Feb 2008, 08:30
nowit Left join auf 2Spalten, ausgabe in einer Spalte
Keine neuen Beiträge Access Tabellen & Abfragen: 3 Tabellen mit UNION und INNER JOIN abfragen 2 flysly 3734 14. Dez 2007, 14:24
Willi Wipp 3 Tabellen mit UNION und INNER JOIN abfragen
Keine neuen Beiträge Access Tabellen & Abfragen: 2x left outer join 4 Nju 1096 23. Okt 2007, 14:09
Nju 2x left outer join
Keine neuen Beiträge Access Tabellen & Abfragen: Join über Ähnlichkeit 2 angelus05 579 27. Sep 2007, 08:45
angelus05 Join über Ähnlichkeit
Keine neuen Beiträge Access Tabellen & Abfragen: JOIN oder UNION oder was ganz anderes??? 1 Gast 398 19. Jul 2007, 23:48
Nouba JOIN oder UNION oder was ganz anderes???
Keine neuen Beiträge Access Tabellen & Abfragen: INNER JOIN mit mehreren ON-Abschnitten 2 andreczogalla 683 13. Jun 2007, 13:20
andreczogalla INNER JOIN mit mehreren ON-Abschnitten
Keine neuen Beiträge Access Tabellen & Abfragen: Inner Join über 3 riesige Tabellen (ODBC) 3 elimin8tor 1006 08. Apr 2007, 00:11
Gast Inner Join über 3 riesige Tabellen (ODBC)
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Word VBA