PDA

Vollständige Version anzeigen : LAUFENDE NUMMER IN ABFRAGEN


Lola
21.02.2002, 14:09
Hallo zusammen,

Komm' gar nicht weiter

Hab' eine Abfrage, die so aussieht

SELECT [tblGrunddaten].[Klasse], [tblGrunddaten].[Name], [tblGrunddaten].[Vorname]
FROM tblGrunddaten
WHERE (
(([tblGrunddaten].[Klasse]) Like Formulare!frmKlassenliste![Kombinationsfeld0])
);

Ich muß Datensätze in dieser Abfrage fortlaufend nummerieren.

Hab' das gefunden:
"in einer eigenen Spalte einen SQL-Text wie den folgenden ein:"

Nummer: (Select Count (*) FROM [tblGrunddaten] as Temp WHERE [Temp].[Nummer] < [Artikel].[Nummer])+1

Wo muß dieser SQL-Text stehen? :confused:


Gruß und Danke im Voraus...

Lola
21.02.2002, 15:22
Hab' das Problem schon gelöst! :laugh:

Joachim Hofmann
21.02.2002, 16:25
Hallo,

wie ich bemerke, lösen sich Probleme hier in letzter Zeit auch öfters mal "von selber".
Gut ist es wenn der Fragesteller dann auch mal kurz beschreibt, worans denn lag, oder wie er/sie es gelöst hat, weil das auch andere Leser interessieren kann.

Sascha Trowitzsch
22.02.2002, 00:36
Sie hatte wahrscheinlich kein eindeutiges Feld "Nummer" in ihrer Tabelle. Ein solches Feld - z.B. Autowert - muss man dann gegebenenfalls hinzufügen, damit der Vergleich temp.Feld > Tabelle.Feld funktioniert.

Lola
22.02.2002, 16:05
Hi!
Das ist die Lösung. In meiner Abfrage im Entwurfansicht hab' ich folgendes gemacht:

in eine leere Spalte in der Zeile "Feld"

LfdNr:

reingeschrieben (mit Doppelpunkt!!!) und dann die Formel (hinter dem Doppelpukt)

(Select Count (*) FROM [tblGrunddaten] as Temp WHERE [Temp].[Nummer] < [Artikel].[Nummer])+1


Tschüß :)

Lola
22.02.2002, 16:06
Und noch etwas

Im SQL-Fenster sieht das folgendermassen aus:

SELECT tblGrunddaten.Klasse, tblGrunddaten.Name, tblGrunddaten.Vorname, (Select Count (*) FROM [tblGrunddaten] as Temp WHERE [tblGrunddaten].[Nummer])+1 AS LfdNr
FROM tblGrunddaten
WHERE (((tblGrunddaten.Klasse) Like [Formulare]![frmKlassenliste]![Kombinationsfeld0]));

Kevin
11.03.2002, 13:10
Aber sagt mal, mit zufälligen Autowert geht das net oder ???

MarioR
11.03.2002, 16:16
@Kevin

Nein. Dafür ist zwingend ein Feld notwendig, das für jeden neuen DS einen höheren (oder meinetwegen niedrigeren) Wert erhält, als wie in den vorhandenen DS schon drin steht.

Hier im Posting richtet sich die lfd. Nummerierung z.B. nach dem Feld "Nummer". Es wäre aber auch ein Feld mit Datum+Uhrzeit möglich (dann aber maximal 1 DS pro Sekunde). Am einfachsten ist aber der inkrementelle Autowert.