Frage zu MySQL Join

Gast #5006639
Lesenswert?

Hallo zusammen,

ich habe 2 Tabellen, die in einer 1:n Beziehung zueinander stehen.
Per left Join kann ich die beiden Tabellen durchsuchen und die 
gewünschten Felder ausgeben.
Mein Problem ist, dass ich die Ergebnisse für eine Instant-Suche nutzen 
möchte und ich bei den Reihen mit Daten aus beiden Tabellen auch noch 
die ursprüngliche linke Seite des Joins genau ein mal als eigenständige 
Reihe benötige. Anonsten fehlen mir Datensätze in den Suchergebnissen, 
da ich auswählen möchte, ob ich den Hauptdatensatz alleine aufrufe, oder 
den Hauptdatensatz + per Join gefundenen verbundenen Datensatz.

Macht man da 2 Abfragen (einen INNER JOIN + eine normale Suche in der 
linken Tabelle alleine) und verbindet die dann per UNION und sortiert 
anschließend mit ORDER BY?

Oder gibt es eine bessere Lösung?

Viele Grüße
Karl
Gast #5006904
Lesenswert?

Karl schrieb:
> Oder gibt es eine bessere Lösung?

einfach in der Anwendung doppelte Einträge überspringen. Dafür muss man 
doch nicht 2 mal abfragen.

a    b
1    a1
1    b2
2    a1
2    b2

dann ist es wohl kein Problem, in der Software wenn das Result geladen 
wird nur eindeutige werte von a zu übernehmen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren