Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Teil des Inhaltes abfragen

Begonnen von sql_dummy, Mai 10, 2011, 16:36:32

⏪ vorheriges - nächstes ⏩

sql_dummy

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.

MzKlMu

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?
Gruß Klaus

sql_dummy

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?

MzKlMu

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
Gruß Klaus