Re: laufenden Nummer in Abfrage

19/11/2008 - 13:55 von Kai Apel (Berlin) | Report spam
Nachtrag:

Die Abfrage hat funktioniert - dauert bei 10000 Datensàtzen doch ein
ganzes Weilchen (15min). Jetzt habe ich noch ein anderes Problemchen:

in einer Tabelle mit X (String), Name (string) soll ebenfalls eine
laufende Nummer erzeugt werden.
mittels folgender Subquery kriege ich das auch hin:

lfdNummer: (Select Count (*) FROM [s1] as X WHERE [X].[Gruppe]=[s1].
[Gruppe] AND [X].[NAME] < [s1].[NAME])+1

allerdings dürfen keine Leerwerte in der Spalte Name stehen. Wie kann
ich die Leerwerte mit berücksichtigen?

das folgende Beispiel zeigt das Problem:

(Tabelle mit Leerwerten)

X Name lfdNummer
1265350Si (LEER) 1
1265350Si Hand 1
1265350Si Fuss 2
1265350Si Tor 3

(Tabelle ohne Leerwerte)

X Name lfdNummer
1265350Si 99 1
1265350Si Hand 2
1265350Si Fuss 3
1265350Si Tor 4

Problem ist glaube ich folgende Bedingung: AND [X].[NAME] < [s1].
[NAME] , so dass NULL eigenstàndig gezàhlt wird.
Wie muss ich dass denn anpassen, dass NULL mitgezàhlt wird?
 

Lesen sie die antworten

#1 Mark Doerbandt
19/11/2008 - 14:15 | Warnen spam
Hallo, Kai,

Kai Apel (Berlin):

in einer Tabelle mit X (String), Name (string) soll ebenfalls eine
laufende Nummer erzeugt werden.
mittels folgender Subquery kriege ich das auch hin:

lfdNummer: (Select Count (*) FROM [s1] as X WHERE [X].[Gruppe]=[s1].
[Gruppe] AND [X].[NAME] < [s1].[NAME])+1

allerdings dürfen keine Leerwerte in der Spalte Name stehen. Wie kann
ich die Leerwerte mit berücksichtigen?

das folgende Beispiel zeigt das Problem:

(Tabelle mit Leerwerten)

X Name lfdNummer
1265350Si (LEER) 1
1265350Si Hand 1
1265350Si Fuss 2
1265350Si Tor 3

(Tabelle ohne Leerwerte)

X Name lfdNummer
1265350Si 99 1
1265350Si Hand 2
1265350Si Fuss 3
1265350Si Tor 4

Problem ist glaube ich folgende Bedingung: AND [X].[NAME] < [s1].
[NAME] , so dass NULL eigenstàndig gezàhlt wird.
Wie muss ich dass denn anpassen, dass NULL mitgezàhlt wird?



das koenntest Du einfach mit Nz() erledigen, aber: was ist denn bei
gleichen Namen? Die erhalten dann den gleichen Rang, denn das ist eine
Rangfolge, die Du da baust und keine Laufende Nummer.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen