N zum m CAST to Varchar

Hallo Wissende, ich habe folgende Frage, kann ich per CAST oder sonst einen Befehl eine n zu m beziehung in eine n zu n beziehung umwandeln?

Wenn ich einen „normalen“ join ausführe, dann ist es ja meistens so

A - A
A - B
A - C
B - A
B - C

Ich würde mit dem Cast gerne folgendes erreichen:
A - ABC
B - AC

Ich weiss das Cast nicht das vollbringen kann was ich hier beschreibe, aber ich denke so ist es anschaulich erkärt, danke für eure Zeit und Hilfe.

bzw. Concat
s.o

Hallo Ralf, danke für deine Antwort, ich meine natürlich eine 1:n Beziehung… *peinlich*

Also wie beschrieben:
A->A
A->B
A->C

also:
1->N
1->N
1->N

Ich habe mir bereits die funktion concast bzw. concast_sw angeschaut (mysql) leider habe ich keine idee wie ich das auf mehrere felder anwenden könnte. So das ich eine 1:1 beziehung habe
A->ABC

Ja mit Programmieren wäre das natürlich sehr simpel lösbar, aber es muss doch auch anders gehen?

Danke nochmals für deine Zeit

korrektur: concast = concat
s.o

Hi Indyk,

Ja mit Programmieren wäre das natürlich sehr simpel lösbar,
aber es muss doch auch anders gehen?

hier prallen zwei Welten aufeinander: SQL ist mengenorientieret und liefert Zeilen zurück. In einer Zeile wird aber immer nur eine Beziehung abgebildet.

Der Concat verkettet Werte, die gerade im Zugriff sind, löst also nicht das Problem, mehrere Zeilen erstmal in eine Spalte zu bringen. Ich weiß dafür leider keine Lösung, derartiges wurde aber in Fachzeitschriften immer wieder als Denksportaufgabe gebracht. Es geht vielleicht - fragt sich bloß, mit welchem Aufwand.

Gruß Ralf

Hallo Indyk,
Hallo Ralf,

gelöscht :
Ich weiß dafür leider keine Lösung, derartiges
wurde aber in Fachzeitschriften immer wieder als
Denksportaufgabe gebracht. Es geht vielleicht - fragt sich
bloß, mit welchem Aufwand.
gelöscht :

die Lösung existiert, wenn die Elemente bekannt sind. Lösungsansatz ist immer mit Transponieren, die Zusammenführung der Daten ist dann ein Kinderspiel. Ohne Datenbankangaben wage ich mich aber nicht an einen Lösungsansatz.

MfG Georg V.

Moin, Georg V.,

die Lösung existiert, wenn die Elemente bekannt sind.

ich bekomme die Werte nebeneinander, wenn jeder aus einer anderen Query stammt. Meinst Du das? Damit lässt sich aber die Aufgabe nicht lösen, die Zeilen einer Query zu Spalten zu machen.

Wenn die Anzahl der Mitspieler bekannt ist, dann lässt sich natürlich eine Reihe von Queries aufbauen à la

create view qa as select wert from table where wert = "a"
create view qb as select wert from table where wert = "b"
create view qc as select wert from table where wert = "c"

und darauf ein

select qa.wert, qb.wert, qc.wert
from qa, qb, qc

Gleich lupft’s mich.

Gruß Ralf

Danke für Eure Meinungen und Ansätze, ich habe mich nun am folgenden Lösungsansatz orientiert:
http://sqljunkies.com/WebLog/amachanic/archive/2004/…

Schade das es keinen „normalen“ weg gibt, zu Zeiten wo allen einen atomaren aufbau predigen ist mein anliegen glaube ich nicht selten.

Danke nochmals.

[ot] atomarer Aufbau
Moin, Indyk,

zu Zeiten wo allen einen atomaren aufbau predigen

was ist das? Ist mir in 35 Jahren Datenbänkerei nicht begegnet, kenne ich nur aus der Schule (Kristalle u.ä.). Hast Du mal einen Link?

Gruß Ralf