Vinzenz Mai: Zwei DB Abfragen an denen ich verzweifle (noobie)

Beitrag lesen

Hallo Rouven,

select email, count(email) from tabelle group by email having count(email)=2;
2 bitte, ansonsten sind nur die echt-doppelten drin, nicht aber die dreifachen.

1 bitte, ansonsten sind die echt doppelten auch nicht drin :-)

Deine Lösung zu (2) funktioniert nur, falls name+vorname+telefon die einzig relevante Ähnlichkeit ist, gilt aber auch name+vorname+stadt wird die Abfrage höllisch umfangreich.

Eben. (3 aus x) kann je nach Größe von x verdammt groß werden. Bei 3 Übereinstimmungen und 8 Spalten wären es bereits 112 Möglichkeiten, die zu betrachten sind :-)

Was ich mir vorstellen kann wäre in etwa folgendes:

Kreuzprodukt der Tabelle mit sich selbst.
eingeschränkt mittels einer Funktion, die die Übereinstimmungen in der Liste der relevanten Spalten zählt und deren Rückgabewert mindestens 3 ist :-)
Ich kann mir nicht vorstellen, dass das performant ist - aber besseres fällt mir auch nicht ein.

Freundliche Grüße

Vinzenz