Einzelnen Beitrag anzeigen

Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#1

Suchergebnis nach Trefferhäufigkeit auswerten und sortieren

  Alt 1. Dez 2005, 11:13
Datenbank: NexusDB embedded • Version: 2.02 • Zugriff über: NexusDB Komponenten
Hallo zusammen,

ich brüte gerade vor folgendem Problem:

In meiner meiner Datenbank, welche die Eigenschaften von Dateien (Name, Erstellungs-/Änderungsdatum etc.) in einer Tabelle gespeichert hat, möchte ich vor dem Hinzufügen neuer Datensätze herausfinden, ob die Datei schon vorhanden ist.

Leider gibt es ja keine eindeutige Möglichkeit, eine Datei zu identifizieren, denn alle Paramenter könnte der User ja verändert haben (Dateigröße, Änderungsdatum, Checksumme etc. ändern sich u.U. nach Dateimodifizierung, Erstellungsdatum ändert sich bei Umkopieren auf anderen Datenträger etc.)

Deshalb soll per SQL nach allen diesen Dateieigenschaften (per "OR"?) zusammen gesucht werden und eine Liste sortiert nach den häufigsten Treffern ausgegeben werden. Nun könnte ich abfragen und erkennen, zu wie viel Prozent die Einträge in meiner Tabelle diesen Kriterien entsprechen.

Würde ein User also eine Datei umbenennen und versuchen, diese erneut einzulesen, sollte die SQL-Abfrage ergeben, dass eine z.B. 80% Übereinstimmung vorliegt.
Ich könnte somit bis zu einem gewissen Prozenzsatz davon ausgehen, ob diese Datei schon in meiner DB vorhanden ist oder nicht.


Könnte man dieses Problem per SQL lösen?

Ich habe schon mit Count(*) und einer Abfrage der Dateieigenschaften per "OR" gearbeitet und nach der ID gruppiert. Aber leider liefert das Ergebnis niemals eine Datei mehrfach auf, sofern sie mehrfach den Suchbedingungen entspricht. Sonst könnte man diese Mehrfachauflistung einer Datei zur Feststellung heranziehen, wie oft sie dem gesuchten Wert entspräche.


Habt ihr ein eine Idee wie das zu lösen wäre? Vielen Dank schonmal für Eure Gedanken...


Grüße
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat