Laden...

JOIN, als zeichenkette verknüpfen

Erstellt von Savage vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.963 Views
S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren
JOIN, als zeichenkette verknüpfen

hallo,
ich habe 2 tabellen, welche ich mit einem join verbinde.

habe ich eine möglichkeit die gejointen datensätze in einem feld mit , getrennt anzuzeigen?

also normal wird es ja z.B. so ausgegeben:
User1:Gruppe1
User1:Gruppe2
User2:Gruppe1

will aber nun die gejointen datensätze in einer zeile:
User1:Gruppe1, Gruppe2
User2:Gruppe1

ist das überhaupt möglich?

D
496 Beiträge seit 2005
vor 17 Jahren

geht nicht das:

select tabelle1.group1 | tabelle2.group1 as group

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren

select tabelle1.group1 | tabelle2.group1 as group

ich verstehe nicht ganz was du meinst

D
496 Beiträge seit 2005
vor 17 Jahren

damit fügst du im pronzip zwei spalten zusammen das ist doch was du möchtest oder?

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren

nö nicht ganz...

ich möchte die gejointen zeilen in einer spalte ausgeben

D
496 Beiträge seit 2005
vor 17 Jahren

gejoint oder nicht ist doch egal das abfrage ergebnis ist doch eine tabelle
poste doch mal deine select string

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren

Also:


SELECT usr_Loginname, gro_Name 
FROM users
LEFT JOIN usergroups ON users.usr_UID = usergroups.usr_UID
LEFT JOIN groups ON groups.gro_GID = usergroups.gro_GID

Liefert:


Zeile1: admin   | Mitarbeiter 
Zeile2: admin   | Administratoren 
Zeile3: testtest| Mitarbeiter 

Ich will aber die die Benutzergruppen in einer Spalte haben, also:


Zeile1: admin   | Mitarbeiter, Administratoren
Zeile2: testtest| Mitarbeiter 

D
496 Beiträge seit 2005
vor 17 Jahren

aha das ist mit standard SQL meiner meinung nach nicht zu machen zumindest nicht mit diese tabellenstruktur da wirst du wohl ein workaround machen müssen....

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren

schade, mag nicht immer im code wegen einer einfachen anzeige ein workaround machen 😦

D
496 Beiträge seit 2005
vor 17 Jahren

kannst du denn deine tabellenstruktur noch ändern?
das wäre wahrscheinlich am einfachsten

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 17 Jahren

nö, geht auf keinen fall, außerdem wäre es sinnlos eine benutzergruppenzuweisung in einer tabelle zu machen.

1.985 Beiträge seit 2004
vor 17 Jahren

Hallo zusammen,

die Tabellenstruktur solltest Du nicht ändern, denn das wäre falsch. Was Du vom Select bekommst, ist ja auch korrekt so und entspricht genau dem, was das JOIN machen soll. Was Du möchtest ist eine andere Darstellung und die erreichst Du in diesem Fall wohl nicht über das Select direkt.

Die gewünschte Anzeige musst Du wohl manuell zusammenbauen.

Gruß,
Fabian

"Eine wirklich gute Idee erkennt man daran, dass ihre Verwirklichung von vornherein ausgeschlossen erscheint." (Albert Einstein)

Gefangen im magischen Viereck zwischen studieren, schreiben, lehren und Ideen umsetzen…

Blog: www.fabiandeitelhoff.de