0 Pluspunkte 0 Minuspunkte

Ich habe eine Tabelle in MSSql die 2 Benutzergruppen miteinander verbindet.

SELECT * FROM dbo.aud_group_group
----------------------------------
ggr_grp_id ggr_parent_grp_id
30747 30896
30749 31010
[...]

Die Gruppen, referenziert via "ggr_grp_id" liegen in "dbo.aud_group". Wie kann ich zu jedem Ergebnis die Namen der Gruppen auflösen? Das Ergebnis sollte dann beide IDs und zusätzlich die Namen beinhalten.

----------------------------------
ggr_grp_id ggr_grp_name ggr_parent_grp_id ggr_parent_group_name
30747 Group1 30896 ParentGroup1
30749 Group2 31010 Group1
[...]
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Um die Namen der Gruppen zu den Ergebnissen der Tabelle dbo.aud_group_group aufzulösen, musst du die Tabelle dbo.aud_group einbeziehen, in der die Gruppennamen gespeichert sind. Du kannst dies mithilfe eines JOIN in SQL erreichen.

SELECT 
    ggr.ggr_grp_id,
    grp1.grp_name AS grp_name,
    ggr.ggr_parent_grp_id,
    grp2.grp_name AS parent_grp_name
FROM 
    dbo.aud_group_group AS ggr
JOIN 
    dbo.aud_group AS grp1 ON ggr.ggr_grp_id = grp1.grp_id
JOIN 
    dbo.aud_group AS grp2 ON ggr.ggr_parent_grp_id = grp2.grp_id;

ggr ist ein Alias für die Tabelle dbo.aud_group_group.

grp1 ist ein Alias für die Tabelle dbo.aud_group, die mit ggr.ggr_grp_id verknüpft ist, um den Gruppennamen zu erhalten.

grp2 ist ein Alias für die Tabelle dbo.aud_group, die mit ggr.ggr_parent_grp_id verknüpft ist, um den Namen der übergeordneten Gruppe zu erhalten.

von (776 Punkte)