Abfrage

Hallo,

ich möchte eine Abfrage machen, habe in einem Feld mehrere Zahlen stehen, möchte aber nur eine Ziffer davon rauspicken, z.B. Inhalt: 5, 15, 25, 30, 34, 35......wie kann ich nur die Nr. 5 abfragen?

Annette
Hallo Annette,

willst du alle Datensätze, die eine Zahl mit einer 5 enthalten ? Das wäre (falls dein Feld ein Number-Feld ist):

( [Feld].AsString.Contains("5") )

willst du nur die 5 selektieren ? Das wäre:

( [Feld] = 5 )

Hilft dir das?

Gruß von Maxilla
Hallo Maxilla,

ich möchte nur die 5 selektieren. Das mit ([Feld])= 5 ) habe ich schon probiert. Hat nicht funktioniert. Da sucht er nach Datensätzen, in denen in einem Feld nur EINE Zahl, die 5 steht. Aber in diesem Fall stehen da mehrere Zahlen, alle durch Komma und Leerzeichen getrennt. Liegt da vielleicht der Fehler?

Gruß Annette
Hallo Annette,

Ich hab's mal probiert:
( [Feldname] .astokens(",").findbyvalue("5")>(-1))

Vielleicht klappts.

Gruß Jürgen
Durch Komma und Leerzeichen getrennt? Dann ist das ja kein Nummernfeld sondern ein Textfeld. In diesem Fall müsstest du

[Feld].Contains("5")

schreiben.
schade, hat bei beiden Varianten nicht ganz geklappt.

Bei ( [Feldname] .astokens(",").findbyvalue("5")>(-1))
zeigt er mir die Felder, die eine 5 enthalten, aber nicht alle.

Bei [Feld].Contains("5") wählt er auch die Felder, die z.B. 25 oder 35 enthalten.
Hallo Annette,

Jetzt frag ich mich aber ernsthaft, was du eigentlich willst??
Gib dann doch mal ein konkretes Beispiel eines Feldes an, das gefunden werden soll.
Hallo Annette,
also ich würde nach der Zeichenkette: Komma Leerzeichen 5 Komma suchen lassen. Das sähe dann wie folgt aus:
([Feld]= "* 5,*")
Die Abfrage findet die Zahl 5 in einer Zeichenkette, wenn davor ein Leerzeichen kommt und danach ein Komma. Damit sollte die Zahl 5 meines Erachtens gefunden werden, nicht aber die 15 usw.

Aber in der Tat könnte das auch genauer umschrieben werden. Wer weiß, ob ich das richtig verstanden habe.

Es grüßt
Johannes
Danke Johannes, hat funktioniert