MySQL: Darstellungsproblem

pdikij

Mitglied
Hallo!

Ich habe momentan ein "kleines" Problem bei der Darstellung einer Abfrage.
Und zwar, folgende Situation:

Code:
Tabelle user: Spalten: id, name
Tabelle pc: Spalten: pcnr, id, name
Tabelle mon: Spalten: monnr, id, name

Mit dem folgenden Query:

SQL:
SELECT * 
FROM (

SELECT id "id1", name
FROM user
) AS sub1
LEFT OUTER JOIN (

SELECT pcnr, id "id2", name
FROM pc
) AS sub2 ON id2 = id1
LEFT OUTER JOIN (

SELECT monnr, id "id3", name
FROM mon
) AS sub3 ON id3 = id1

bekomme ich folgendes Ergebnis:

Code:
id1 | name   |   pcnr | id2 | name  |  monnr | id3 | name  

0    dummi      1      0    eins      1          0    mon1 
1    Meier      2      1    pc1       2          1    Meiers1 
1    Meier      2      1    pc1       3          1    Meiers2 
2    Reiner     3      2   zwei       4          2    Reiners

Das ist auch mehr oder weniger in Ordnung, aber...

Das problem Liegt in den Zeilen:

id1 | name | pcnr | id2 | name | monnr | id3 | name

1 Meier 2 1 pc1 2 1 Meiers1
1 Meier 2 1 pc1 3 1 Meiers2

Ich möchte nähmlich, dass es mir in dem folgenden Format ausgibt:

id1 | name | pcnr | id2 | name | monnr | id3 | name | monnr | id3 | name

1 Meier 2 1 pc1 2 1 Meiers1 3 1 Meiers2

Also alles in einer Zeile.
Gibt es eine Möglichkeit das so wie ich es beschrieben habe umzusetzen?:confused:
Kann mir da jemand helfen?:confused:

Vielen Dank im Voraus!

pdikij
 
Zuletzt bearbeitet von einem Moderator:
Hallo!

Event. würde Dir da eine Kreuz- bzw. Pivotabfrage helfen, ich glaube das würde hier neulich behandelt.

Danke für den Möglichen Lösungsansatz! :)
Leider kenne ich mich auf diesem Gebiet noch nicht so gut aus daher
kann ich mir leider nur schwer vorstellen wie ich das machen könnte...
Hab auch den Forum bereits mal durchgesucht, find aber kaum etwas hilfreiches.

Könntest du vielleicht mal so ein Beispiel zur Pivotabfrage mal posten?
Währe sehr hilfreich!

Bis dann

pdikij
 
Zurück