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

31 lines
1004 B
SQL

DELIMITER $$
SET @saved_sql_mode = @@sql_mode
$$
SET @@sql_mode = 'NO_AUTO_VALUE_ON_ZERO'
$$
CREATE PROCEDURE `sp_get_resources_by_account`( -- 이름 변경
IN p_account_name VARCHAR(255) -- 파라미터명 변경
)
COMMENT '사용자 계정명으로 할당된 자원 목록 조회 (간단 버전)'
BEGIN
DECLARE v_user_id BIGINT DEFAULT NULL;
-- 계정 이름으로 사용자 ID 찾기
SELECT user_id INTO v_user_id
FROM user_info WHERE LOWER(account_name) = LOWER(p_account_name) LIMIT 1; -- 컬럼명 변경
-- 사용자가 존재하면 해당 사용자의 자산 목록 반환
IF v_user_id IS NOT NULL THEN
SELECT r.resource_id, r.resource_name, r.serial_num
FROM resource_info r
WHERE r.user_id = v_user_id
ORDER BY r.register_date; -- 정렬 기준 변경: create_date -> register_date
ELSE
-- 사용자가 없으면 빈 결과 반환
SELECT NULL AS resource_id, NULL AS resource_name, NULL AS serial_num WHERE FALSE;
END IF;
END
$$
DELIMITER ;