dop. Datensätze innerhalb einer Tabelle vgl

Hopefully

Grünschnabel
MSSQL > dop. Datensätze innerhalb einer Tabelle vgl

Hallo

ich habe eine mssql7.0 DB. Auf dieser DB habe ich eine Tabelle auf der ich eine Spalte RegisterNR. habe und eine Spalte VersionsNr.

so, nun kann es vorkommen das es mehrfach Einträge gibt mit derselben RegisterNr und VersionsNR.

Tabelle: Dokument
z.B.
RegisterNR VersionsNR
123 1
123 1
456 1
567 1
567 2


Ich will nun alle RegisterNr., die doppelt oder öfters vorkommen, die auch dieselbe VersionsNr haben...

Select
KontoNr, Stichwort, RegisterNr, VersionsNr
from Dokument

where RegisterNr in
(Select RegisterNr from Dokument
group by RegisterNr, VersionsNr
having count(RegisterNr) > 1)

order by VersionsNr, RegisterNr

Wenn ich diese Abfrage benutze, dann bekomme ich auch zb wie oben im bsp den Wert 567, den ich ja eigentlich nicht haben möchte.

RegisterNR VersionsNR
123 1
123 1
567 1
567 2

Ich stehe mächtig auf dem Schlauch und bin um jeden Rat dankbar.
 
Zuletzt bearbeitet:
Select
d1.KontoNr, d1.Stichwort, d1.RegisterNr, d1.VersionsNr
from Dokument d1


where Exists
(Select d2.RegisterNr from Dokument d2

where d1.RegisterNr = d2.RegisterNr AND d1.VersionsNr = d2.VersionsNr
group by d2.RegisterNr, d2.VersionsNr
having count(d2.RegisterNr) > 1)

order by d1.VersionsNr, d1.RegisterNr
 
Andi ich danke dir ....funktioniert alles :)
super Sache...hatte es zwar auch mit EXISTS ausprobiert bin aber mit der richtigen Syntax kräftig auf dem Schlauch gestanden..
 
Zurück