START WITH~구문 서브쿼리 0 2 780

by 밍밍밍밍 큐브리드 마리아디비 [2021.09.27 14:33:42]


안녕하세요.

큐브리드 쿼리를 마리아DB로 수정중 문의가 있습니다.

START WITH ~ CONNECT BY PRIOR 구문이 서브쿼리 안에 있는경우에도 

마리아디비의 WITH RECURSIVE ~ 구문으로 수정이 가능한가요?

 

SELECT A.*
  FROM (SELECT ROWNUM AS ROWNUMBER,
               T.POST_NO,
               T.BBS_NO,
               B.MU_NM,
               T.USE_YN
          FROM (SELECT A.*
	                  FROM TB_BOARD_POST A
	                 WHERE A.DEL_YN != 'Y'                 
	                 START WITH      A.POST_PN_NO = 0     
	                 CONNECT BY      PRIOR A.POST_NO = A.POST_PN_NO    
	                 ORDER BY A.POST_GP_NO ASC 
                 ) T 
         JOIN TB_MENU B     ON T.MU_NO = B.MU_NO    
         AND B.DEL_YN != 'Y'
         WHERE 1=1                             
        ) A  
  ORDER BY ROWNUMBER desc 

 

by 마농 [2021.09.27 14:50:53]
WITH RECURSIVE t AS
(
SELECT a.*
  FROM tb_board_post a
 WHERE a.post_pn_no = 0
 UNION ALL
SELECT a.*
  FROM t p
 INNER JOIN tb_board_post a
    ON p.post_no = a.post_pn_no
)
SELECT ROW_NUMBER() OVER(ORDER BY a.post_gp_no) rn
     , a.post_no
     , a.bbs_no
     , b.mu_nm
     , a.use_yn
  FROM t a
 INNER JOIN tb_menu b
    ON a.mu_no = b.mu_no
 WHERE a.del_yn != 'Y'
   AND b.del_yn != 'Y'
 ORDER BY rn DESC
;

 


by 밍밍밍밍 [2021.09.27 15:32:33]

답변감사합니다!

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