본문 바로가기

SubQuery2

MySQL Update Subquery 성능 비교 (ver.5.6) 지난 포스팅으로 select ~ where in (서브쿼리)와 같은 서브쿼리가 MySQL 5.6 버전에서 대폭 최적화 되었음을 확인하였는데요. 이번에는 update (update ~ where in (서브쿼리)) 에서도 서브쿼리 최적화가 잘 작동하는지 확인해보겠습니다. 0. 테스트 환경 테스트 환경은 이전 select 테스트때와 같습니다. 메인 테이블 100만건 서브 테이블1 (인덱스 O) 1000건 서브 테이블2 (인덱스 X) 1000건 DDL 쿼리는 다음과 같습니다. 메인 테이블 -- 업데이트 대상 테이블 create table main_table ( id int not null auto_increment, target_id int not NULL, primary key (id) )ENGINE=Inn.. 2020. 9. 1.
[Querydsl] 서브쿼리 사용하기 안녕하세요! 이번 시간에는 Querydsl에서의 Subquery 기본 가이드를 진행합니다. 개인적으로 ORM을 사용하며, 객체지향적으로 엔티티가 구성되어있으면 서브쿼리가 필요한 일은 거의 없다고 생각하는데요. 혹시나 필요한 분들이 계시면 도움이 되셨으면 합니다. 그럼 시작합니다! 모든 코드는 Github에 있으니 참고하세요 :) 1. select Sub Query 첫번째는 select절의 서브쿼리입니다. 도메인에 대한 설명보다는 Querydsl 코드가 좀 더 도움이 되실것 같아 코드로 바로 설명드리겠습니다. Spring Data Jpa에서 Querydsl 적용을 어떻게 하는지는 이전 포스팅을 참고해보세요 :) Querydsl의 코드는 아래와 같습니다. 여기서 주의깊게 봐야할 코드는 ExpressionUt.. 2019. 1. 18.