PDA

Vollständige Version anzeigen : Index in Abfrage


bergziege
16.03.2007, 09:58
Hallo zusammen,

vielleicht ist meine Idee um folgendes Problem zu lösen auch nicht geeignet oder technisch nicht umsetzbar. Deshalb frage ich euch mal um Rat.

Problem:

Ich möchte verschiedene Reihenfolgen miteinander vergleichen. Dazu habe ich verschiedene Abfragen in denen ich für verschiedene Bereiche Reihenfolgen stehen habe. Jede dieser Abfrage hat eine eindeutige P-Nr.
Die Reihenfolge für einen Bereich ergibt sich aus einer Reihenfolgenummer (RF_NR). Diese RF-NR ist jedoch ziemlich hässlich z.B. 2,10019571052E+11.
Pro Abfrage ergeben sich sich max. 600 Datensätze oder weniger. Im ersten Bereich sind alle Datensätze. In den weiteren Bereichen sind es genauso viele oder weniger. Jedoch kann sich die Reihenfolge in den Bereich zwei und höher ändern. Damit ich in Zukunft nicht mehr mit die hässliche RF-Nr. ansehen möchte, wollte ich jeder P-Nr. eine Indexnummer (aufsteigend) zuordnen. Dann könnte ich die einzelnen Bereichen dem ersten Bereich über die P-Nr. via Join-Anweisung zuordnen und über meine Indexnummer könnte ich die Reihenfolgeänderung nachvollziehen.

Meine Frage: Kann ich in einer Abfrage so eine Indexnummer aufsteigend erzeugen (ähnlich wie bei Tabellen mit, wenn ich mir den Primärschlüssel "automatisch" erzeugen lasse)?

Wenn mein Ansatz schlecht ist, bin ich für andere Anregungen auch dankbar.

Anne Berg
16.03.2007, 10:19
Könnte es sein, dass du nach der Lösung zu "Laufende Nr. in Abfragen" suchst?

Schau mal nach in der Access-FAQ 3.11.

bergziege
16.03.2007, 11:38
Hallo Anne,

danke genau das habe ich gesucht. Ich habe mich für die zweite Möglichkeit entschieden, da diese bedeutend schneller läuft. Jedoch muss ich "Id" bei DomAnzahl eine Zahl sein. Ich habe gerade festgestellt, das die P-Nr. bei mir als Text formatiert ist. Besteht die Möglichkeit dennoch mit der P-Nr. zu arbeiten?

Anne Berg
16.03.2007, 11:49
Das sollte generell auch mit Textfeldern funktionieren, dann musst du natürlich Hochkommata einfügen:LaufNummer: DomAnzahl("PNR";"Tabelle";"PNR<'" & [PNR] & "'")+1

bergziege
16.03.2007, 15:20
Hallo Anne,

vielen vielen Dank, so funktioniert es.

Schönes Wochenende