아래와 같이 프로시저를 작성했습니다.
TEST1_CUR 하나만 실행할때는 별 문제 없는것을 확인했는데요..
TEST2_CUR 두번째 커서를 얻어서 같이 사용하는 방법을 찾고 있습니다.
TEST_TBL1 테이블에서 값을 읽어 처리하는게 주 목적이고요.
이 데이타중 TEST_TBL2 테이블에 존재하면 TEST_TBL2에 들어있는 필드값으로 특정처리를 해야 합니다.
없으면 그냥 간단한 산식을 적용후 TEST_TBL3이라는 테이블에다 넣는것이지요.
특정한 날의 데이터를 테이블1에서 검색해서 필드1, 필드2를 계산해서 테이블3에 넣는데,
테이블2에 있는 데이터이면 테이블2의 곱하기/나누기 구분값과 수치를 읽어서 곱하기/나누기를 한 다음
테이블3에 넣는것입니다.
어찌하면 좋을까요? 고수님들 도움을....^^;;
--- TEST_PROC
--CREATE PROC TEST_PROC AS
ALTER PROC TEST_PROC AS
DECLARE TEST1_CUR CURSOR READ_ONLY FOR
SELECT equip_code FROM TEST_TBL
WHERE reg_date = CONVERT(CHAR(8), DATEADD(MONTH, -3, GETDATE()), 112) + SUBSTRING(CONVERT(CHAR(2), DATEADD(HOUR, -2, GETDATE()), 108), 1, 2)
DECLARE TEST2_CUR CURSOR READ_ONLY FOR
SELECT equip_code, modulus_operation1, modulus1, modulus_operation2, modulus2 FROM TEST_TBL2
DECLARE @ERGCD CHAR(11)
DECLARE @EQUIPCD CHAR(11)
OPEN TEST1_CUR
FETCH NEXT FROM TEST1_CUR INTO @ERGCD, @EQUIPCD
WHILE(@@fetch_status <> -1)
BEGIN
IF(@@fetch_status <> -2)
BEGIN
PRINT @ERGCD + @EQUIPCD
END
FETCH NEXT FROM TEST1_CUR INTO @ERGCD, @EQUIPCD
END
CLOSE TEST1_CUR
DEALLOCATE TEST1_CUR
|