프로젝트 진행 중
# Table tb_a, tb_b inner join a.sno = b.sno
# a에는 없는 b.level을 검색해서 들고 오고 싶었음
본래 맡고 있던 프로젝트 해결하고 온 사이에 쿼리가 수정 되어있었다..!!
수정의 요인은 >>성능 저하<<
다행이 성능 저하의 이유를 들을 수 있었다..!
select from 에서 inner join을 한번 하고
다시 select from에서 inner join을 한게 문제였다...
#작성했던 코드가 없는 관계로 대략 기억하는 상황까지 작성했다.
#tb_a, tb_b
select *
from
(select *
from tb_a a
inner join tb_b b
on a.sno = b.sno) as c
inner join tb_a
on c.sno = a.sno
where ...
마음의 상처를 입으며 리더님께서 작성하신
select 절에서 다른 테이블에 접근해서 select 하는 쿼리를 보게 되었다.
개인 프로젝트는 단위가 작아서 쿼리 성능에 대해서 깊게 생각하지 않았는데.. 새로운 발견이다..!
검색 중에 예시도 있고 좋은 글을 찾아서 첨부한다.
https://vivi-world.tistory.com/24
https://gywn.net/2012/05/mysql-bad-sql-type/
쿼리... 잘 생각하고 작성하자... ㅠㅅ ㅠ
'개발 > DB' 카테고리의 다른 글
쿼리 작성 시 주의할 부분... ING (1) | 2023.10.10 |
---|---|
select이 느리면 인덱스를 추가해보자 (0) | 2023.10.06 |
[Postges] Spring Boot + Postgres 설정하기 (0) | 2022.11.15 |
Real MySQL 8.0 [ING] (0) | 2022.10.31 |
Incorrect string value: '\xED\x85\x8C\xEC\x8A\xA4...' for column~ (0) | 2022.07.31 |