Laden...

"Duplikate" mit Revisionsnummer auflisten

Erstellt von dscNRW vor 2 Jahren Letzter Beitrag vor 2 Jahren 378 Views
D
dscNRW Themenstarter:in
30 Beiträge seit 2021
vor 2 Jahren
"Duplikate" mit Revisionsnummer auflisten

Verwendetes Datenbanksystem: MSSQL

Hallo zusammen,

entweder es liegt am Wetter oder ich stehe, was wahrscheinlicher ist, komplett auf dem Schlauch.

Ich habe eine Tabelle die Dokumente mit Revisionsnummern enthält.

Jetzt möchte ich mir aus meiner Anwendung die Einträge abrufen.
Problem besteht darin, dass ich derzeit keinen Anhalts- / Ansatzpunkt habe wie ich die Query aufbauen soll.


SELECT ??? FROM TABLENAME WHERE Name = @p1

  • so schwirrt mir das im Kopf aber das ist ja Unsinn.

Das Abrufen der Einträge, sofern nur ein Eintrag vorhanden ist, ist das ok, aber wenn mehr als eine Revision
vorhanden ist, hakt es halt.

Eine Hilfstabelle wäre noch denkbar, das wollte ich aber nach Möglichkeit vermeiden.

Habt ihr einen kleinen Denkanstoß?

Muss / soll auch keine Query geliefert werden - einfach nur ein Denkstoß.

Danke schonmal 🙂

6.911 Beiträge seit 2009
vor 2 Jahren

Hallo dscNRW,

was soll denn passieren wenn mehr als eine Revision vorhanden ist?

Als Denkanstoß allgemein: group by und / oder max bzw. min.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

4.931 Beiträge seit 2008
vor 2 Jahren

Um Duplikate aufzulisten, benötigst du einen SELF JOIN.

PS: Du hättest in deinem Beitrag besser nochmal dein Anliegen (im Titel) erwähnen sollen.

D
dscNRW Themenstarter:in
30 Beiträge seit 2021
vor 2 Jahren

Danke gfoidl und th,

ich habe mich da echt beknackt ausgedrückt.

Gehen wir mal davon aus, es sind Metadaten vorhanden:

Name Datum Pfad Revision
Dok1 04.05.21 C:\temp... 1
Dok1 05.05.21 C:\temp... 2
Dok1 05.05.21 C:\documents... 1
Dok2 29.04.21 C:\... 1
Dok3 01.05.21 C:\documents... 1
Dok4 07.05.21 C:\documents... 1
usw.

Nun möchte ich für Dok1 in C:\temp alle Revisionen aufgelistet bekommen; nicht jedoch aber für Dok1 (was ein vollkommen
anderes Dokument - auch unabhängig der Revisionsnummer - sein kann.) aus c:\documents.

Ich habe es jetzt vorläufig so gelöst, dass ich eine weitere Spalte habe die mir bei einer weiteren Revision
die ID des Ursprungsdokumentes enthält.

Anschließend kann ich mit einem Union arbeiten. Das funktioniert erstmal.

Ist aber gewiss nicht der Weisheit letzter Schluss.

Gruß,
D.

16.807 Beiträge seit 2008
vor 2 Jahren

Bitte drück Dich in Zukunft so aus, dass potentielle Helfer erkennen können, worum es geht.
Versuch nicht den Fall so sehr zu vereinfachen (aka gehen wir davon aus, ich hab hier mal ein vereinfachtes Beispiel), dass wir gar nicht mehr erkennen können, das das eigentliche Problem ist - das ist ein häufiger Grund für Verständnisfehler in Foren.

Ich habe es jetzt vorläufig so gelöst, dass ich eine weitere Spalte habe die mir bei einer weiteren Revision
die ID des Ursprungsdokumentes enthält.

Ja, so macht man das in vielen Fällen.

D
dscNRW Themenstarter:in
30 Beiträge seit 2021
vor 2 Jahren

Entschuldige Abt, werde ich machen.

16.807 Beiträge seit 2008
vor 2 Jahren

Wäre keine Entschuldigung notwendig gewesen 😉
Nutzt ja vor allem Dir selbst, weil Du dadurch eine bessere Hilfe bekommst.