Hallo zusammen
Vielleicht wurde dieses Thema hier bereits behandelt. Momentan stehe ich aber so etwas von auf dem Schlauch, dass ich noch nicht einmal herausgefunden habe, nach welchen Stichworten ich suchen kann....
Ich habe (nebst anderen) zwei "Tabellen". In der ersten (adm_user_data) gibt es (unter anderen) eine Spalte "usd_usr_id", eine mit "usd_usf_id" und eine "usd_value". In der ersten steht eine personenbezogene Zahl. In der zweiten eine Zahl, welche dem Feldtyp entspricht - zum Beispiel 1 für Nachname und 2 für Vornamen. In der zweiten Tabelle (adm_members) heissten die relevanten Spalten "mem_rol_id", "mem_usr_id" und "mem_begin". Die Daten aus "mem_begin" möchte ich nun pro Spalte nach "mem_rol_id" sortieren. Vielleicht hilft an dieser Stelle ein Bild (was ich habe und was ich möchte) zum besseren Verständnis:
Mittels folgendem Code kann ich die Daten einer Rolle (Im Beispiel 39) anzeigen lassen.
Kann mir jemand einen Tipp geben, wie ich die weiteren Spalten angefügt bekomme?
Besten Dank bereits im Voraus.
Liebe Grüsse
voumi
<code>
SELECT usr_id,
CONCAT(id1.usd_value) AS nachname, CONCAT(id2.usd_value) AS vorname, YEAR(CONCAT(id10.usd_value)) AS Jahrgang, rol_id, rol_sequence, rol_name, YEAR(mem_begin), YEAR(mem_end)
FROM adm_roles, adm_categories, adm_members, adm_users
LEFT JOIN adm_user_data id1 ON id1.usd_usr_id = usr_id
AND id1.usd_usf_id = 1
LEFT JOIN adm_user_data id2 ON id2.usd_usr_id = usr_id
AND id2.usd_usf_id = 2
LEFT JOIN adm_user_data id10 ON id10.usd_usr_id = usr_id
AND id10.usd_usf_id = 10
WHERE rol_id = 39 AND mem_begin <= NOW() AND mem_end > NOW()
AND rol_valid = 1
AND rol_cat_id = cat_id
AND cat_org_id = 1
AND mem_rol_id = rol_id
AND mem_usr_id = usr_id
AND usr_valid = 1
ORDER BY nachname ASC, vorname ASC
</code>
Vielleicht wurde dieses Thema hier bereits behandelt. Momentan stehe ich aber so etwas von auf dem Schlauch, dass ich noch nicht einmal herausgefunden habe, nach welchen Stichworten ich suchen kann....
Ich habe (nebst anderen) zwei "Tabellen". In der ersten (adm_user_data) gibt es (unter anderen) eine Spalte "usd_usr_id", eine mit "usd_usf_id" und eine "usd_value". In der ersten steht eine personenbezogene Zahl. In der zweiten eine Zahl, welche dem Feldtyp entspricht - zum Beispiel 1 für Nachname und 2 für Vornamen. In der zweiten Tabelle (adm_members) heissten die relevanten Spalten "mem_rol_id", "mem_usr_id" und "mem_begin". Die Daten aus "mem_begin" möchte ich nun pro Spalte nach "mem_rol_id" sortieren. Vielleicht hilft an dieser Stelle ein Bild (was ich habe und was ich möchte) zum besseren Verständnis:
Mittels folgendem Code kann ich die Daten einer Rolle (Im Beispiel 39) anzeigen lassen.
Kann mir jemand einen Tipp geben, wie ich die weiteren Spalten angefügt bekomme?
Besten Dank bereits im Voraus.
Liebe Grüsse
voumi
<code>
SELECT usr_id,
CONCAT(id1.usd_value) AS nachname, CONCAT(id2.usd_value) AS vorname, YEAR(CONCAT(id10.usd_value)) AS Jahrgang, rol_id, rol_sequence, rol_name, YEAR(mem_begin), YEAR(mem_end)
FROM adm_roles, adm_categories, adm_members, adm_users
LEFT JOIN adm_user_data id1 ON id1.usd_usr_id = usr_id
AND id1.usd_usf_id = 1
LEFT JOIN adm_user_data id2 ON id2.usd_usr_id = usr_id
AND id2.usd_usf_id = 2
LEFT JOIN adm_user_data id10 ON id10.usd_usr_id = usr_id
AND id10.usd_usf_id = 10
WHERE rol_id = 39 AND mem_begin <= NOW() AND mem_end > NOW()
AND rol_valid = 1
AND rol_cat_id = cat_id
AND cat_org_id = 1
AND mem_rol_id = rol_id
AND mem_usr_id = usr_id
AND usr_valid = 1
ORDER BY nachname ASC, vorname ASC
</code>