패키지 내에 2 개의 절차가 있습니다. 하나의 프로 시저를 호출하여 쉼표로 구분 된 사용자 ID 목록을 가져옵니다.NUMBER 열의 IN 절에서 쉼표로 구분 된 값을 사용합니다.
결과를 VARCHAR
변수에 저장합니다. 내가 구분 된 목록이 쉼표를 사용하고 때 "ORA-01722:INVALID NUMBER"
예외를 던지고에서 지금 IN
절 안에 넣어.
을 이것은 내 변수가 어떻게 보이는지 이것은
l_userIds VARCHAR2(4000) := null;
처럼 내가 값
을 할당하고 어디에
l_userIds := getUserIds(deptId); -- this returns a comma separated list
그리고 내 두 번째 쿼리는 같다 -
select * from users_Table where user_id in (l_userIds);
이 쿼리를 실행하면 INVALID NUMBER
오류가 발생합니다.
누군가 도움을 줄 수 있습니까?
, 선택은 plsql (결과 집합을 변수에 저장해야 함) 전체 쿼리를 표시하십시오 – Sebas
users_id에서 select *를 선택하십시오. 여기서 user_id는 (select l_userIds); – maSTAShuFu