union all 결과를 arraylist에 담을때... 구분값 0 9 793

by 란주 [DB 기타] [2020.08.12 13:46:35]



union all을 하기 전엔 쿼리를 3번 날렸었어요.

그런데 3번 날리는것 보다는 

union all로 한번에 묶어 결과를 가져와 arraylist에 구분한 결과값을 넣으려 하거덩요 ㅎ

 

각각 select문 마다 강제로 키값을 넣어 결과를 받아

반복문을 돌리며 기값을 확인하며 arraylist에 담아야 할까요?  그냥 심각한건 아니에요 ㅎ

 

그림은 못그렸는데 저의 생각입니다 ㅜㅜ

 

by 우리집아찌 [2020.08.12 13:53:24]

UNION ALL 되어있는 SQL을 올려주세요.


by 우리집아찌 [2020.08.12 14:11:45]

한번에 SQL로 처리한후 각각의 ARRAY LIST에 담는다는 말씀인가요?

추천하고 싶지 않는 방법입니다. 

데이타량이 몇건 안되는데 그럴 필요까지는 없어보이네요.


by 란주 [2020.08.12 14:16:44]

3번이라 말씀드렸지만 30번이 될수도 ㅎㅎ

기존 소스를 고쳐보려 생각해 본거라...

소스는 이미지로 첨부하였습니다. 

구분값은 sbcode 입니다 ...


by 우리집아찌 [2020.08.12 14:27:05]

위의 SQL 만 가지고 짐작하긴 확실하지 않는데요..

만약 같은 SQL을 가지고 UNION ALL 할것이면 그냥 하나의 SQL문이로 전부 처리가 될것 같은데요.

 

 


by 란주 [2020.08.12 14:31:44]

sql문이 많이 지저분 해서 많이 줄여서 넣은거라 ㅎㅎ


by 란주 [2020.08.12 14:36:49]

혹시 드는 질문인데요 with에 테이블 결과 미리 담아 놓고 union select절 마다 가져다 사용하면

속도가 좀 좋아질까요??


by 우리집아찌 [2020.08.12 14:39:54]

아니요

데이터 양이 많은데 WITH 절 쓰는건 비추천 드립니다.

성능에 문제 생길수 있습니다. 


by 란주 [2020.08.13 17:26:03]

답변감사합니다

데이터 양이 많은건 어느정도를 생각하면 될까요???


by 우리집아찌 [2020.08.14 10:20:47]

딱 얼마까지 쓰는게 좋다고 말씀드리긴 힘듭니다.

제가 사용하는 기준에서는 100건~1000건 미만만 처리했었습니다. ( 가독성 때문 )  

가능하시면 안쓰시는게 제일 좋습니다.

 

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