존나 깔 껀덕지도 없는 단순한 코드를 붙잡고 하는 말이,



A join B join C where a and b and c 보다, (subQuery A where a) join (subQuery B where b) join (subQuery C where c) 가 더 빠르대.


이거 안해서 존나 갈굼당함....


저렇게 해야 조인을 하기 전에 미리 웨어절로 조인할 칼럼 수를 줄여놓고 조인한다고 더 빨라진대


아니 그럼 시발 모든 조인을 다 서브쿼리로 하고 가면.....


일단 JPA에서 프롬 조인 서브쿼리 안되는 고로


차선책으로 모든 조인을 풀어서 썼음.


A에서 웨어를 적용하고,


추려진 A를 통해서 B를 뽑아올때 조인컬럼에 where 줘서 간추리고 뽑았음.


일단 조인을 하나도 안하고 직접 다 쿼리 개별적으로 날려서 해결했음.


빨라지긴 빨라지더라


0.7초짜리 쿼리가 0.3초로 줄어들긴 했음.



일단 난 0.7초짜리 쿼리들 보고 나보고 백엔드 문제 존나 많다고

나를 청소해야하는 문제덩어리로 보는것도 짜증나고


성능개선이거 하드웨어문제인거 확신하고나니까 더 어이가없었음.



그럼 대기업들은


join하나도 맘대로 안함???? 당연히 조인할 필요성이 있는 경우 얘기임. 조인을 남용했다는것도 아니고

조인 해야할때 조인하지말고 조인을 풀어헤치거나 서브쿼리에다가만 조인하라는건데



그렇다면 sql 그냥 이거 쓰레기 병신인데???


생산성 좆구린 병신물품.


jpa는 서브쿼리 안먹히니까 그냥 폐급 쓰레기고.



그냥 뭐 언어가 아니라 어셈블리 인데????




하드웨어가 병신인거 알고나니까 더 병신같다.



그래서 조인할때마다 서브쿼리에다가 조인함?? 대기업들은 그럼? ㅋㅋㅋㅋㅋㅋ


조인할때 서브쿼리 안썼다고 폐급되는거임???



글구 0.7초짜리 쿼리는 뭐 쿼리 누가짰냐는 소리 들어야할정도로 폐급인거임?