Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: michelig am Dezember 05, 2011, 10:40:51

Titel: Niedrigste Zahl in Datensatz suchen
Beitrag von: michelig am Dezember 05, 2011, 10:40:51
Hallo,
für mich gerade ein größeres Problem, zu dem Ihr gewiß eine ganz simple Lösung habt.
Habe mit Dao.Recordset in einer Tabelle einen Datensatz mit der Find-Methode ausgewählt. Dieser hat in den Feldern (Spalten) 1 bis 4 Zahlenwerte (Integer). Wie komme ich nun schnell und ohne Umstände an den niedrigsten Wert.
Meine bisherige Lösung scheint mir ein wenig umständlich (Steinzeitlich?):
Wert im 1. Feld als Variable varX speichern. Mit dem Wert im 2. Feld vergleichen. Wenn dieser niedriger, diesen als varX übernehmen. Dann varx mit dem Wert des 3. Feldes vergleichen..etc.
Geht sicher viel einfacher.

danke im voraus für die Mühen
Titel: Re: Niedrigste Zahl in Datensatz suchen
Beitrag von: MzKlMu am Dezember 05, 2011, 10:50:04
Hallo,
Zitatfür mich gerade ein größeres Problem, zu dem Ihr gewiß eine ganz simple Lösung habt.
Dazu gibt es keine simple Lösung, da das Datenmodell falsch ist. Access kann nicht einfach per Formel aus 4 Feldern das Minimum ermitteln. Das ist in einer Datenbank nicht vorgesehen. Deine jetzige Lösung ist hier (für das falsche Datenmodell) das einfachste.

Besser Datenbankkonforme Lösung anstreben:
Die Zahlenwerte müssen in eine extra Tabelle, je Wert ein Datensatz (kein Feld). Die 4 Werte geben also 4 Datensätze mit einem Bezug (Fremdschlüssel) zum jetzigen Hauptdatensatz.
Dann lässt sich problemlos mit einer Abfrage das Minimum ermitteln. Oder mit dem Befehl DMin(), der nur auf eine Spalte in Datensätzen anwendbar ist.