Files
gyber/db/procedures/sp_get_all_groups.sql
2025-09-15 13:33:34 +09:00

23 lines
835 B
SQL

DELIMITER $$
CREATE PROCEDURE `sp_get_all_groups`()
COMMENT '모든 그룹(부서) 목록 조회 (관리자 이름 포함, 이름순)'
BEGIN
SELECT
g.group_id,
g.group_name,
g.manager_user_id,
-- 관리자 표시 이름 생성 (user_list 프로시저와 유사하게)
CASE
WHEN m.user_id IS NOT NULL AND m.display_name IS NOT NULL AND m.display_name != '' AND m.account_name IS NOT NULL THEN CONCAT(m.display_name, ' [', m.account_name, ']')
WHEN m.display_name IS NOT NULL AND m.display_name != '' THEN m.display_name
WHEN m.account_name IS NOT NULL THEN m.account_name
ELSE NULL -- 매니저 없는 경우
END AS manager_display_name
FROM group_info g
LEFT JOIN user_info m ON g.manager_user_id = m.user_id -- user_info 와 조인
ORDER BY g.group_id;
END
$$
DELIMITER ;