Frage von schlaukopf52, 13

Access "verkettete" Suchfunktion?

Ich habe gerade versucht eine Suchfunktion in Access zu erstellen, wobei ich allerdings mit zwei Kriterien suchen möchte, d. h. wenn ich aus meiner Datenbank ein spezielles Produkt finden möchte, muss ich erst den Hersteller eingeben und danach die Artikelbezeichnung.
Ich hatte mir gerade überlegt, dass ich mit der Suche nach dem Hersteller eine Anfrage erstellen müsste, die nur einen gewissen Datensatz für die zweite Suche (der Artikelbezeichnung) frei geben sollte.
Allerdings habe ich keine Ahnung wie ich sowas mache, da ich heute erst wieder angefangen habe mit Access zu arbeiten.

Antwort
von daCypher, 8

Theoretisch könntest du eine Unterabfrage bauen, die nach Herstellern gefiltert ist und die dann als Basis für die Abfrage nehmen, die nach der Artikelbezeichnung sucht. Das macht normalerweise aber keinen Geschwindigkeitsunterschied zu einer Abfrage, bei der du einfach beides als Kriterium rein machst. Wenn du beides als Kriterium rein machst, kannst du die Abfrage danach auch noch im Abfrageeditor bearbeiten. Wenn du es mit einer Unterabfrage machst, geht das nicht mehr oder nur noch für die übergeordnete Abfrage.

Mit Unterabfrage:

SELECT * 
FROM (SELECT * 
      FROM Produkt WHERE Hersteller = "bla") AS Unterabfrage WHERE Artikelbezeichnung = "blub"


Mit zwei Kriterien

SELECT * 
FROM Produkt
WHERE Hersteller = "bla" AND Artikelbezeichnung = "blub"



Kommentar von schlaukopf52 ,

Wo muss ich denn das bei den Anfragen reinschreiben. Ich habe wirklich keine Ahnung von den Anfragen:D

Kommentar von daCypher ,

Du musst ne neue Abfrage erstellen (die heißen übrigens wirklich Abfrage und nicht Anfrage) also Menü>Erstellen>Abfrageentwurf und dann kannst du dieses "Tabellen hinzufügen" Fenster schließen und oben links auf "SQL" klicken. Da kannst du das dann reinkopieren.

Wird aber mit sehr großer Sicherheit nicht so funktionieren, es sei denn, du hast wirklich eine Tabelle, die "Produkt" heißt und in der die Spalten "Hersteller" und "Artikelbezeichnung" vorhanden sind.

Nimm dir lieber den Abfrageeditor (also das, was aufgeht, bevor du auf SQL klickst) und bau dir damit die Abfrage zusammen.

Antwort
von dbuth, 10

ich bin kein Access Profi, aber grundsätzlich brauchst du 2 Tabellen. Eine mit den Herstellern und eine mit den Artikeln (in der steht welcher Hersteller es ist). Oder du minimierst es auf die zweite Tabelle - kenne da dein Gesamtziel nicht.

Dann machst du entsprechend erst eine Anfrage über die Hersteller und dann eine Anfrage über die Artikel+Einschränkung auf den gewählten Hersteller.

Keine passende Antwort gefunden?

Fragen Sie die Community