Zum Inhalt springen

Wie kann ich "*19" mit unterschiedlichen Zahlen abfragen?


Empfohlene Beiträge

Geschrieben

Hallo,

ich sitze gerade vor einem kleinen Problem, an dem ich nicht weiter komme.

Der nachfolgende Fall bezieht sich auf eine Datenbank unter Access 2000.

Ich habe ein Textfeld in dem unter anderem "*19" oder "*14" steht. Ich bräuchte eine Abfrage, die mir nur die Felder in diesem Format herausliest. Allerdings scheitere ich regelmäßig an dem Sternchen, das vor der Zahl steht. Das Problem ist auch, daß in der Spalte unter anderem eben auch Zahlen ohne Sternchen stehen habe.

Vielen Dank schon mal für die Tipps.

Althea :confused:

Geschrieben

Hi,

das habe ich mir auch schon überlegt, aber das würde im endeffekt zu aufwendig werden, da die 14 bzw. 19 nicht die einzigen Zahlen sind die ich brauche. Die Zahlen kann ich ja mit '#' kenntlich machen. Aber wie verbinde ich das ganze jetzt noch mit dem Sternchen? Das ganze ist leider nur in Verbindung eindeutig.

Althea :confused:

Geschrieben

mhm... fuer die zahlen wuerd ich ein statement like:

SELECT bla FROM table WHERE zahl IN ('\*14','\*19','\*XX');

verwenden... bin mir aber net sicher, ob sowas hinhaut...

Geschrieben
Original geschrieben von -silencer-

ich kenne access net, aber kann man das in der abfrage nich escapen?

also nach \*14 und \*19 abfragen?

Nein, das funktioniert nicht, ist ja kein php oder Perl... ;)

@Althea.Vestrit: Mit mid und right sollte das klappen:

Laenge=len(Textfeld.value)

if mid(Textfeld.value, Laenge-3,1)="*" and right(Textfeld.value, 2)<="99" or mid(Textfeld.value, Laenge-3,1)="*" and right(Textfeld.value, 2)>="00" then ......

Ich habs nicht ausprobiert, evt. geht das beim Right mit den 2 Stellen wegen dem String nicht, dann mußt du halt das vorletzte Zeichen noch mal extra mit mid(Textfeld.value, Laenge-2,1) abfragen. Ich hoffe aber das Prinzip ist klar geworden...

Falls die letzten 2 Stellen grundsätzlich Zahlen sind, brauchst du die gar nicht Abfragen, da die ja nur zwischen 00 und 99 sein können. Dann würde es reichen, wenn du so Abfragst:

if mid(Textfeld.value, Laenge-3,1)="*" then.....

Geschrieben

Unter MS Access (getestet auf Access 2000) kannst Du den Stern und andere Sonderzeichen wie # und _ maskieren, indem Du sie in eckige Klammern setzt.

z.B:


SELECT * FROM table WHERE field LIKE "[*]45"

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...