Brauche eine Abfrage...

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

damava
Beiträge: 1
Registriert: Di, 16.05.2006 10:27

Brauche eine Abfrage...

Beitrag von damava »

Edit: Falls es jemanden interessiert, ich habe eine Lösung gefunden:

Code: Alles auswählen

SELECT CONCAT(Studenten.Name, CONCAT(', ',
(SELECT Studenten.Name FROM Studenten WHERE Gruppen.sid2=Studenten.SID)))
FROM Gruppen INNER JOIN Studenten ON Gruppen.sid1=Studenten.SID
Hallo Leute!

Angenommen ich habe folgende zwei Tabellen:

1. "Person" mit den Feldern ("PID", "Name")
2. "Gruppe" mit den Feldern ("GID", "person1", "person2")

- Zwei Personen können also eine "Gruppe" bilden. Nun bräuchte ich eine Abfrage, welche mir alle Gruppen anzeigt.
- D.h. alle Datensätze in der Tabelle "Gruppe" werden durchgegangen, für jede Gruppe werden die Namen von person1 und person2 aus der Tabelle "Person" geholt.
- Die beiden Namen müssten nun irgendwie verknüpft werden, zb. 'name1, name2'.

Beispiel:

Tabelle Person (PID, Name)
----------
'1' 'Max Muster'
'2' 'John Doe'

Tabelle Gruppe (GID, person1, person2)
----------
'1' '1' '2'

Daraus sollte Irgendwas von folgender Form erzeugt werden:

(GID, Namen)
----------
'1' 'Max Muster, John Doe'

Ist das möglich?
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Beitrag von Barlee »

Hallo damava,

das sollte funktionieren:

Code: Alles auswählen

SELECT 
Gruppe.GID, 
Person.Name + concat(', ',Person1.Name)  as Mitglieder
from Gruppe
inner join Person on Gruppe.person1 = Person.PID
inner join Person as Person1 on Gruppe.person2 = Person1.PID
Gruß Barlee
Antworten