Office: Abfrageproblem

Helfe beim Thema Abfrageproblem in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Ich habe ein Feld in dem drei mögliche Einträge enthalten sind (numerisch). Wie kann ich in der Abfrage die Daten selektieren? Nehmen wir an, die... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Roli, 21. August 2007.

  1. Roli Neuer User

    Abfrageproblem


    Ich habe ein Feld in dem drei mögliche Einträge enthalten sind (numerisch). Wie kann ich in der Abfrage die Daten selektieren?

    Nehmen wir an, die Einträge sind 1,2 und 5.

    Ich möchte nun alle Datensätze in der Abfrage selektieren, die entweder
    in diesem Feld 1 oder 2 oder 5 haben, aber auch 1 oder 5, oder auch 1,2 und 5 - oder nur 2

    Ich habe keine Problem mit 2 Werten aber mit drei bekomme ich es nicht hin!

    Der Anwender sollte die Möglichkeit haben entweder einen Wert (zB 2) auszuwählen, aber auch zwei Werte (zB 1 und 5) oder aber auch alle Datensätze anzeigen können, Werte 1, 2 und 5.

    Vielen Dank, wahrscheinlich geht das ganz einfach aber ich komme einfach nicht auf die Lösung!
     
  2. AK
    ak Erfahrener User
    SELECT * FROM tabelle WHERE (field=1 or field=2 or field=5 or (field=1 or field=2) or (field=1 or field=5) or (field=2 or field=5) or (field=1 or field=2 or field=5));
     
  3. Roli Neuer User
    Parameter eingeben

    Vielen Dank für die Hilfe!
    Hab das Ganze noch in Klammer gesetzt aber ich kann keinen Parameterwerte eingeben außer 1 oder 2 oder 5.
    Wie kann ich bei der Abfrage (Parameterwert Eingeben) zB 1 und 5 selektiern? Hab es mit 1, 5 und 1; 5 ... versucht.

    DANKE NOCHMALS!!!
     
  4. AK
    ak Erfahrener User

    Abfrageproblem

    Tja, daß das eine Parameterabfrage sein soll, stand im Anfangsposting nicht drin.

    Das Problem: Der Parameterparser sieht beim Input, na sagen wir "1,2,5" eine Zeichenkette, wo er eine Zahl erwartet. Und bricht ordnungsgemäß ab.

    Ich komm' morgen noch mal darauf zurück, wenn mir keiner zuvorkommt.
     
  5. Roli Neuer User
    Parameterabfrage

    Super, VIELEN DANK!!!!
     
  6. AK
    ak Erfahrener User
    Mit dem "SUPER" wäre ich zurückhaltender gewesen.

    Das Pseudo-SQL aus der MS-Jet-Engine "rafft" aufwendiger gestaltete Textstrings wie " '1' OR '2' OR '5' " in einer Input Box nicht. Jedenfalls nicht so weit, um daraus 3 Zahlen zu machen, die nacheinander mit dem Feld verglichen werden. Sie kann entweder 1 Zahl mit 1 Zahl vergleichen, 1 Zeichenkette mit 1 Zeichenkette und hat noch ein paar mickrige Konversionsfunktionen, aber das war's dann auch.

    Es gibt 2 Umgehungsmöglichkeiten: entweder stellt man in der Property Page des Formulars für diese Tabelle ein Suchfeld her oder formuliert diese von mir im 1. Reply gegebene Where-Klausel in einem formularbasierten Filter.

    Als letzte Möglichkeit kann man das Ganze auch in VBA codieren. D.h., man läßt VBasic den vorerwähnten String parsen und häppchenweise an diese doofe MS-Jet-Engine verfüttern.

    Ist an sich keine große Sache, aber ich habe a) in meiner Schublade nix, was ich schnappen und hierher petzen könnte und b) zuwenig Zeit, ein nettes, kleines Tutorial zu schreiben (außerdem bin ich kein Mod).
     
Thema:

Abfrageproblem

Die Seite wird geladen...
  1. Abfrageproblem - Similar Threads - Abfrageproblem

  2. Abfrageproblem

    in Microsoft Access Hilfe
    Abfrageproblem: Hallo Leute, ich habe ein Problem mit einer Access Abfrage. Ich möchte in einen Datumsfeld Datensätze eingrenzen, die ein bestimmtes Kriterium erfüllen. Zum Beispiel der 30. Oktober letzten Jahres...
  3. Abfrageproblem...

    in Microsoft Access Hilfe
    Abfrageproblem...: Hallo Forum, ich habe von einer Kollegin eine Access-DB übernommen, und habe jetzt ein kleines Problem bei einer Abfrage bzw. bei der Ausgabe des Berichts... In einer Tabelle gibt es jeweils...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden