by 란주 [DB 기타] [2020.08.12 13:46:35]
union all을 하기 전엔 쿼리를 3번 날렸었어요.
그런데 3번 날리는것 보다는
union all로 한번에 묶어 결과를 가져와 arraylist에 구분한 결과값을 넣으려 하거덩요 ㅎ
각각 select문 마다 강제로 키값을 넣어 결과를 받아
반복문을 돌리며 기값을 확인하며 arraylist에 담아야 할까요? 그냥 심각한건 아니에요 ㅎ
그림은 못그렸는데 저의 생각입니다 ㅜㅜ
UNION ALL 되어있는 SQL을 올려주세요.
한번에 SQL로 처리한후 각각의 ARRAY LIST에 담는다는 말씀인가요?
추천하고 싶지 않는 방법입니다.
데이타량이 몇건 안되는데 그럴 필요까지는 없어보이네요.
3번이라 말씀드렸지만 30번이 될수도 ㅎㅎ
기존 소스를 고쳐보려 생각해 본거라...
소스는 이미지로 첨부하였습니다.
구분값은 sbcode 입니다 ...
위의 SQL 만 가지고 짐작하긴 확실하지 않는데요..
만약 같은 SQL을 가지고 UNION ALL 할것이면 그냥 하나의 SQL문이로 전부 처리가 될것 같은데요.
sql문이 많이 지저분 해서 많이 줄여서 넣은거라 ㅎㅎ
혹시 드는 질문인데요 with에 테이블 결과 미리 담아 놓고 union select절 마다 가져다 사용하면
속도가 좀 좋아질까요??
아니요
데이터 양이 많은데 WITH 절 쓰는건 비추천 드립니다.
성능에 문제 생길수 있습니다.
답변감사합니다
데이터 양이 많은건 어느정도를 생각하면 될까요???
딱 얼마까지 쓰는게 좋다고 말씀드리긴 힘듭니다.
제가 사용하는 기준에서는 100건~1000건 미만만 처리했었습니다. ( 가독성 때문 )
가능하시면 안쓰시는게 제일 좋습니다.