검색결과 리스트
글
ORALCE] CURSOR 커서 사용하기
여러개의 로우를 하나의 컬럼으로 만들어서 반환하는 FUNCTION이다
아래 간략한 설명은
SELECT 절에서 특정테이블 컬럼을 값을 인자로 넘겨서 해당인자를 조건으로하여
검색된 여러개의 로우를 LOOF를 돌면서 하나의 컬럼으로 만들고 해당 값을 반환하는 형식이다.
(IN_PROGRAM IN VARCHAR2)
RETURN VARCHAR2
IS
NAMESTR VARCHAR2(1000);
V_HAKKWACD ABK_PROGRAMGROUP.HAKKWACD%type;
V_HAKKWANM ABK_PROGRAMGROUP.HAKKWANM%type;
CURSOR C1 IS
SELECT HAKKWACD, HAKKWANM FROM ABK_PROGRAMGROUP
WHERE PROGRAM = IN_PROGRAM
ORDER BY HAKKWACD;
BEGIN
NAMESTR := '';
OPEN C1;
LOOP
FETCH C1 INTO V_HAKKWACD, V_HAKKWANM;
EXIT WHEN C1%NOTFOUND;
IF NAMESTR IS NULL THEN
NAMESTR := V_HAKKWACD || ' ' || V_HAKKWANM ;
ELSE
NAMESTR := NAMESTR || ',' || V_HAKKWACD || ' ' || V_HAKKWANM;
END IF;
END LOOP;
CLOSE C1;
RETURN NAMESTR;
END;
아래와 같은 결과를 얻을수있다.
RECENT COMMENT