"distinct" für text typen
-
moin,
häng hier grad an einer abfrage. ich hab zwei tabellen, eine mit adressen und eine mit krediten. in der kredite tabelle werden zu den jeweiligen einträgen adress IDs gespeichert... oder auch nicht, das feld kann ebenso leer sein.
nun will ich eine abfrage, die mir eine disjunkte tabelle aller felder aus adressen liefert, von denen IDs in kredite vorkommen.
soweit so einfach, nur beinhaltet die adressen tabelle text felder, für die distinct nicht benutzt werden kann. wie geht das in dem fall?
mit der anfrage:
SELECT DISTINCT a.id FROM adressen AS a JOIN kredite AS k ON a.id=k.aid
komm ich schonmal an die entsprechenden IDs. aber woher bekomm ich nu den rest? habs mit nem union versucht, aber der will ja auch distinct benutzen.
-
Geht
SELECT * from adressen, kredite where adressen.id = kredite.id
nicht? Kann natürlich sein dass ichs nicht verstanden habe
-
das ist ne m:n beziehung, ich muss die doubletten rausbekommen.
-
Also eine m:n Beziehung ist dies hier schon mal nicht. Wieso soll soll Distinct auf Textfelder nicht funktionieren? Was für einen Datenbank benutzt du?
Dies sollte auf jedenfall Doubletten für Kredite entfernen
SELECT * FROM Adressen WHERE id IN (SELECT DISTINCT aid FROM Kredite WHERE aid IS NOT NULL)