중복쿼리 ㅠㅠ 0 6 1,002

by 성울 [2013.10.17 17:44:31]



 SELECT sde_density
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 40, sde_feed_cnt, '' ) ),'90.9')) a40_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 60, sde_feed_cnt, '' ) ),'90.9')) a60_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 80, sde_feed_cnt, '' ) ),'90.9')) a80_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 120, sde_feed_cnt, '' ) ),'90.9')) a120_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 150, sde_feed_cnt, '' ) ),'90.9')) a150_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 200, sde_feed_cnt, '' ) ),'90.9')) a200_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 300, sde_feed_cnt, '' ) ),'90.9')) a300_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 400, sde_feed_cnt, '' ) ),'90.9')) a400_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 500, sde_feed_cnt, '' ) ),'90.9')) a500_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 600, sde_feed_cnt, '' ) ),'90.9')) a600_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 700, sde_feed_cnt, '' ) ),'90.9')) a700_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 800, sde_feed_cnt, '' ) ),'90.9')) a800_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 900, sde_feed_cnt, '' ) ),'90.9')) a900_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 1000, sde_feed_cnt, '' ) ),'90.9')) a1000_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 1200, sde_feed_cnt, '' ) ),'90.9')) a1200_Fcnt
    FROM TBL_STND_DENSITY
    WHERE  DEF_TYPE_CD = #setDFT_TYPE_CD#
   GROUP BY sde_density
   ORDER BY sde_density 

-----------------------------------------------------------------------------------------------
 SELECT sde_density
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 2, sde_feed_cnt, '' ) ),'90.9')) a2_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 10, sde_feed_cnt, '' ) ),'90.9')) a10_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 20, sde_feed_cnt, '' ) ),'90.9')) a20_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 30, sde_feed_cnt, '' ) ),'90.9')) a30_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 40, sde_feed_cnt, '' ) ),'90.9')) a40_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 50, sde_feed_cnt, '' ) ),'90.9')) a50_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 100, sde_feed_cnt, '' ) ),'90.9')) a100_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 200, sde_feed_cnt, '' ) ),'90.9')) a200_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 250, sde_feed_cnt, '' ) ),'90.9')) a250_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 300, sde_feed_cnt, '' ) ),'90.9')) a300_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 400, sde_feed_cnt, '' ) ),'90.9')) a400_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 500, sde_feed_cnt, '' ) ),'90.9')) a500_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 700, sde_feed_cnt, '' ) ),'90.9')) a700_Fcnt
   , TRIM(TO_CHAR(MAX( DECODE( sde_avrwgh, 900, sde_feed_cnt, '' ) ),'90.9')) a900_Fcnt
   
    FROM TBL_STND_DENSITY
    WHERE  DEF_TYPE_CD = #setDFT_TYPE_CD#
   GROUP BY sde_density
   ORDER BY sde_density 


중복쿼리 ㅠㅠ 이걸 1개로 만들고싶은데 ㅠㅠ 감이 오지않네요 ㅠㅠ

생으로 만들긴했는데 ㅠㅠ 로직상...ㅠㅠ

하나로 어케하면될까요 ㅠㅠ

부탁드릴께요
by 마농 [2013.10.17 17:56:51]
그냥 쿼리 두개와 하나로 합치고 싶다는 말 뿐.
문제에 대한 설명은 전혀 없네요.
뭘 어떻게 합치시려는 건가요? 설명을...

by 성울 [2013.10.17 18:00:47]
파라미터에 따라서 처음쿼리를보면 40에대한 값들, 2번째 쿼리는 2에대한...
파라미터 바뀌면 자동적으로  40 이나 2에대한 값을 뽑아오고 싶습니다 ㅠ

by 사랑초 [2013.10.17 17:59:25]
음? 조금 더 명확해 져야 할 것 같아요~
첫번째 sql의 #setDFT_TYPE_CD# 값과 두번째 sql의 #setDFT_TYPE_CD# 값이 서로 다른가요?
union all 과 같은 결과를 원하시는건지...
쿼리만 하나로 합치는거라면 select 뒤에 붙이기만 하면 되는걸 모르시진 않으실테고;

by 성울 [2013.10.17 18:01:14]
네 파라미터 값이 다름니다 ㅠ

by 우리집아찌 [2013.10.17 18:05:56]

CROSS JOIN ??

by 마농 [2013.10.17 18:12:15]
1번 쿼리가 동작할때 파라미터값, 2번이 동작할 때 파라미터값이 뭔가요?
1번과 2번의 컬럼갯수가 다른데요? 1번은 15개, 2번은 14개
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입