MYSQL 쿼리 질문좀 드립니다 0 2 767

by 초보개발자민짱 [MySQL] [2015.11.12 10:38:08]


    DECLARE
        LC_CNT                      NUMBER(1);
BEGIN
    LC_CNT := 0;
    SELECT COUNT(*)           //현재조회한쿼리에 데이터값이 0인지 1인지 구별하기위해
    INTO LC_CNT
              FROM SY_ILJEONG_M A
        INNER JOIN SY_MENU_M B
                ON A.ILJEONG_CD = B.ILJEONG_CD_1
               AND A.EOPMU_GBCD = B.EOPMUGBCD
               AND A.EOPMU_GBCD_SEBU = B.SEBU_EOPMU_GBCD
               AND B.PGM_ID =  'SAHJ0301_M'
             WHERE EOPMU_GBCD = '0031'
               AND EOPMU_GBCD_SEBU = '0201'
              ;
    IF LC_CNT > 0 THEN
SELECT
                  JEOKYONG_YEAR AS DATA
                 ,JEOKYONG_YEAR AS LABEL
              FROM SY_ILJEONG_M A
        INNER JOIN SY_MENU_M B
                ON A.ILJEONG_CD = B.ILJEONG_CD_1
               AND A.EOPMU_GBCD = B.EOPMUGBCD
               AND A.EOPMU_GBCD_SEBU = B.SEBU_EOPMU_GBCD
               AND NVL(B.PGM_ID,'%') LIKE 'SAHJ0301_M'
             WHERE EOPMU_GBCD = '0031'
               AND EOPMU_GBCD_SEBU = '0201'
               ;
ELSE              
SELECT
                   GIJUN_YEAR AS DATA
                 , GIJUN_YEAR AS LABEL
              FROM SY_GIJUNDT_M
             WHERE EOPMU_GBCD = '0031'
               AND EOPMU_GBCD_SEBU = '0201'
               ;
     END IF;
END;                          
              


현재 최초에 COUNT를 조회하여 0인지 1인지 구별하여


조건에 맞게 SELECT문 두개를 제어하고 싶습니다 1이면 중간쿼리를 태우고 0이면 맨밑에 쿼리를 태워버리고 싶은데


DECLARE 문은 INSERT UPDATE 밖에 안돼나요 ? 저값을 조회한다해도 FSP로 받아오지를 못할것같은데


다른 좋은방법이 없는지 선배님들 궁금합니다 




 

by 마농 [2015.11.12 10:53:15]

MySQL 도 아니고 쿼리도 아닌것 같은데요?

Oracle 의 PL/SQL 질문 인것 같은데요?


by 초보개발자민짱 [2015.11.12 10:58:23]

잘못올린것같습니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입