![]() |
Datenbank: Mysql • Zugriff über: ZeosLib
[MySql] Einfache Join Frage
Hallo zusammen,
ist wahrscheinlich eine "doofe" Frage aber ich als nicht SQL-Experte möchte folgendes machen: Tabelle1 und Tabelle2 haben beide ein ID Feld Tabelle 1 Daten: 1 2 4 Tabelle 2 Daten: 1 2 3 Folgendes Ergebnis möchte ich per Join erreichen: 1 1 2 2 3 Null Null 4 Mit left join oder right join sinds halt immer nur 1,2,3 oder 1,2,4 ... Danke für eure Antworten |
Re: [MySql] Einfache Join Frage
Hi!
Ich glaube, dafür bräuchtest du einen Full Outer Join - und ich glaube mich zu erinnern, dass MySQL den nicht unterstützt oder zumindest nicht mit allen Tabellenformen unterstützt. Aber such mal bei Google, da solltest du etwas dazu finden. Grüße, Frederic |
Re: [MySql] Einfache Join Frage
Halo,
kennt mysql einen full outer join ? zu spät ;( Heiko |
Re: [MySql] Einfache Join Frage
So bekommst du das auch mit MySQL hin:
SQL-Code:
Nur sortiert ist es dann noch nicht.
SELECT a.id, b.id FROM test a
LEFT OUTER JOIN test2 b ON a.id = b.id UNION SELECT a.id, b.id FROM test a RIGHT OUTER JOIN test2 b ON a.id = b.id |
Re: [MySql] Einfache Join Frage
Zitat:
![]() Gruß Jürgen |
Re: [MySql] Einfache Join Frage
Hallo,
#4 ich glaube nicht, hier wird doch für Tab1.a / Tab2.a Ein doppelter Eintrag erzeugt ? Distinct ist also zwingend notwendig. Heiko |
Re: [MySql] Einfache Join Frage
IIRC sortiert UNION doppelte Datensätze aus. Wenn man das nicht will, muss man UNION ALL verwenden.
|
Re: [MySql] Einfache Join Frage
Ich bin auch kein MySQL-Guru, aber die Abfrage funktionierte bei mir, wenn ich 2 Tabellen mit den genannten Werten anlege.
Vielleicht gibt es andere, bessere Lösungen. ;) |
Re: [MySql] Einfache Join Frage
Hallo,
Die Antwort von Matze hat mir sehr weitergeholfen. Vielen Dank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz