Überprüfung welche ID's einer anderen ID zugeteilt sind

Oh, ich sehe gerade, dass ich was falsches geschrieben habe. Ich will natürlich entgültig zwei Tabellen daraus erstellen. Einmal für Firmen und einmal für Personen. Sorry!
 
Werbung:
Ich hab mal eben geschaut und offensichtlich hat die Tabelle keinen Primärschlüssel...

Was genau hast du denn nicht verstanden? Vielleicht kann ich dann versuchen das noch genauer zu erklären.
 
Oh, ich hab in der Zieltabelle einen Fehler gemacht. AdressID's können natürlich auch mehrfach vorkommen, wenn sie mehreren unterschiedlichen Personen zugeteilt sind.
 
Ich muss es nicht wirklich verstehen um auf das Ergebnis zu kommen :) , das Beispiel muss einfach nur alle Fälle abdecken, Hier mein Code:
Code:
WITH tabelle(zeile,AdressID,FirmaID,PersonID,Adresstyp,Gelöscht) AS (
   SELECT   ROW_NUMBER() OVER (ORDER BY FirmaID,AdressID,Adresstyp),
       AdressID,FirmaID,PersonID,Adresstyp,Gelöscht
   FROM   LinkAdressen
   WHERE   Gelöscht IS NULL
   )
SELECT   t1.AdressID,t1.FirmaID,t1.Adresstyp,t1.PersonID,t1.Adresstyp
FROM   tabelle t1
WHERE EXISTS (   SELECT   1
         FROM   tabelle t2
         WHERE   isnull(t2.FirmaID,0) = isnull(t1.FirmaID,0)
         AND     isnull(t2.AdressID,0) = isnull(t1.AdressID,0)
         AND     isnull(t2.PersonID,0) = isnull(t1.PersonID,0)
         AND     t1.zeile != t2.zeile
         AND   (   t2.Adresstyp = t1.Adresstyp
         OR     t1.Adresstyp IS NULL ) )
ORDER BY t1.AdressID,t1.FirmaID,t1.PersonID,t1.Adresstyp
 
Werbung:
Vielen Dank dafür. Ich hab das mal ausprobiert und nachdem ich

Code:
AND   (   t2.Adresstyp = t1.Adresstyp)

rausgenommen habe, hat es genau das ausgespuckt, was ich benötige.

Ganz lieben Dank dafür, du warst mir eine riesen Hilfe!
 
Zurück
Oben