Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: sql_dummy am Mai 10, 2011, 16:36:32

Titel: Teil des Inhaltes abfragen
Beitrag von: sql_dummy am Mai 10, 2011, 16:36:32
Hallo zusammen,

habe folgende Tabelle:

|  ID  |  MASTER  |  LINK  |

folgende Werte sind bspw. enthalten:
|  1  |  B123  |  A404                                |
|  2  |  B345  |  A404, B123                       |
|  3  |  C678  |  A607, B345, C123, D456  |
|  4  |  D444  |  F606, B123. Z890             |
|  5  |  G100  |  B345                                 |

Ein Wert in der Spalte MASTER kann nur einmal in der Spalte MASTER vorkommen.
Ein Wert in der Spalte MASTER kann in mehreren Datensätzen der Spalte LINK vorkommen, allerdings kann es mit anderen Werten kombiniert sein (durch Komma getrennt).

Ich möchte eine Abfrage erstellen, in der ich folgendes Ergebnis zurück bekommen.
|  ID  |  MASTER  |  LINK  |  MASTER-ID  |
|  2  |  B345  |  A404, B123                       |  1  |
|  4  |  D444  |  F606, B123. Z890             |  1  |
|  3  |  C678  |  A607, B345, C123, D456  |  2  |
|  5  |  G100  |  B345                                 |  2  |

Im Prinzip soll die Abfrage nach den Werten der MASTER-Spalte in der LINK-Spalte suchen (like [*Master]*)
Dahinter soll eine Spalte erzeugt werden, die jedoch die ID des Wertes ausgibt, der für den Datensatz des MASTERs gültig ist.
Bsp: Suche nach B123 in der Spalte LINK
Ausgabe der Zeilen mit der ID 2 und 4, da der Wert B123 in den Datensätzen vorkommt.
Der Wert B123 ist jedoch im Datensatz mit der ID 1 in der MASTER-Spalte vorhanden.
Deshalb soll die 1 in der MASTER-ID Spalte ausgegeben werden.

Wie kann man so etwas erzeugen?

Danke und Grüße.
Titel: Re: Teil des Inhaltes abfragen
Beitrag von: MzKlMu am Mai 10, 2011, 17:42:30
Hallo,
ich habe es zwar nicht ganz verstanden, aber eines ist klar.
Die Tabellen sollten umgebaut werden. Man speichert nicht mehrere Werte in einem Feld.
Die Tabelle 1 würde dann 11 Datensätze umfassen. Das was in Link steht in jeweils einem Datensatz.
Dnn wäre Deine Vorhaben einfach.
So wie es jetzt ist fällt mir gerade keine Lösung ein. Dürfte auch nicht ganz einfach sein. Der Aufbau entspricht eben nicht den Regeln. Und dann hat Access so seine Probleme.

Kannst Du die DB noch ändern?
Wie kommen die Semikolon getrennten Werte in die Tabelle?
Wie ist denn die Beziehungen der beiden Tabellen?
Titel: Re: Teil des Inhaltes abfragen
Beitrag von: sql_dummy am Mai 11, 2011, 02:27:36
Das Speichern mehrerer Werte in einer Zelle (Komma getrennt) ist leider nicht von mir Erfunden worden. Ein Programm legt die Daten leider so ab.

Ich kann die Tabelle durchaus noch ändern.
Am Besten alle Werte in einer separaten Spalte oder?
Titel: Re: Teil des Inhaltes abfragen
Beitrag von: MzKlMu am Mai 11, 2011, 08:01:24
Hallo,
ZitatAm Besten alle Werte in einer separaten Spalte oder?
Nein, auf keinen Fall. Die werte müssen in eine extra Tabelle, je Wert ein Datensatz, immer nur einen Wert.
Die Antwort auf diese Frage:
ZitatWie ist denn die Beziehungen der beiden Tabellen?
steht noch aus