2016-07-19 4 views
0

Ich habe eine Weile gesucht, aber immer noch keine Lösung für mein Problem bekommen.Möglichkeit, doppelte Einträge in Viele zu viele Beziehung zu vermeiden Join

Ich versuche, zwei Tabellen, die Leads und Bestellungen Tabelle zu verbinden.

Beide enthalten eine eindeutige Hausnummer.

Das Problem ist, dass die Leads-Tabelle die eindeutige Hausnummer mehrere Male haben wird. Das einzigartige Haus kann mehrfach geführt werden.

Zusätzlich kann die Auftragstabelle auch die eindeutige Hausnummer mehrmals haben, wenn das bestimmte Haus mehr als eine Bestellung platziert.

So ein Standard-Join auf der Hausnummer wird doppelte Einträge erstellen.

Ich habe ein paar Dinge ausprobiert, wie zum Beispiel die Verwendung von min oder die Verwendung eines Zeilenrangs, aber dies konnte nicht gelöst werden.

Ich brauche eine Übereinstimmung aus der Auftragstabelle, um zu einer Übereinstimmung in der Führungstabelle beizutreten. Dies muss auch die richtige Übereinstimmung sein (am wahrscheinlichsten am nächsten).

Irgendwelche Ideen?

+1

(1) Kennzeichnen Sie Ihre Abfrage mit der Datenbank, die Sie verwenden, verwenden. (2) Geben Sie Beispieldaten und gewünschte Ergebnisse an. (3) Erläutern Sie die Logik, die Sie implementieren möchten - welcher Lead beispielsweise an welchen Auftrag angehängt werden soll. –

+0

Sie suchen also nach den letzten Leads für jede Adresse, die ausgespielt wurde? Zu wissen, auf welche db-Engine Sie ausgerichtet sind, würde helfen. Sie könnten auch zeigen, was Sie versucht haben und warum das nicht erfolgreich war. –

Antwort

0

können Sie Ihre Back-End-Sprache zum Beispiel PHP so etwas wie diese

if (!$cart->items->contains($newItem->id)) { 
     $cart->items()->save($newItem); 
    }