์ปฌ๋ ์ (์ผ๋๋ค) ์์ fetch join์ 1๊ฐ๋ง ์ฌ์ฉํด์ผ ํ๋ค!
๋ฐ์ดํฐ๊ฐ ๋ถ์ ํํ๊ฒ ์กฐํ๋ ์ ์๊ธฐ ๋๋ฌธ
fetch join์ ์ฌ๋ฌ๊ฐ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ
- Order ํด๋์ค ๋ด๋ถ์ ์ผ๋๋ค ๊ด๊ณ์ ๋ํ ํ๋๊ฐ 2๊ฐ์ธ ๊ฒฝ์ฐ
- Order ํด๋์ค ๋ด๋ถ์ ์ผ๋๋ค ๊ด๊ณ์ ๋ํ ํ๋๊ฐ 1๊ฐ๊ณ , ๊ทธ ํ๋์ ๊ฐ์ฒด ๋ด๋ถ์ ์ผ๋๋ค ๊ด๊ณ์ ์๋ ํ๋๊ฐ ์กด์ฌํ๋ ๊ฒฝ์ฐ
์ปฌ๋ ์ (์ผ๋๋ค) fetch join์ ์ฌ์ฉํ๋ฉด ํ์ด์ง์ด ๋ถ๊ฐ๋ฅํ๋ค
Hibernate๊ฐ ๊ฒฝ๊ณ ๋ก๊ทธ๋ฅผ ๋จ๊ธฐ๋ฉด์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ db์์ ์ฝ์ด์จ ๋ค, ๋ฉ๋ชจ๋ฆฌ(=์ดํ๋ฆฌ์ผ์ด์ ๋จ)์์ ํ์ด์ง์ ์ฒ๋ฆฌํ๊ฒ ๋๋ค.(out of memory๊ฐ ๋ฐ์ํ ์ ์์)
distinct๋ก ์ค๋ณต๋ฐ์ดํฐ ์ ๊ฑฐ
์ปฌ๋ ์ (์ผ๋๋ค) fetch join์ ์ค๋ณต ๋ฐ์ดํฐ๊ฐ ๋ฐ์ํ๋๋ฐ, distinct ๋ช ๋ น์ผ๋ก ํด๊ฒฐํ ์ ์๋ค.
์คํ๋๋ sql์ distinct๊ฐ ๋ค์ด๊ฐ๊ณ , ์ดํ๋ฆฌ์ผ์ด์ ๋จ์์๋ distinct ๋ช ๋ น์ผ๋ก ์ค๋ณต๋ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐํด์ค
'๐ORM:JPA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[spring-data-jpa] ๋ฐํํ์ (0) | 2023.09.08 |
---|---|
fetch join, ์ปฌ๋ ์ , ํ์ด์ง์ ์ฑ๋ฅ ์ต์ ํ ๋ฐฉ๋ฒ (0) | 2023.09.02 |
DTO์ getter๊ฐ ํ์ํ ์ด์ (0) | 2023.08.30 |
์ฟผ๋ฆฌ ๋ฐฉ์ ์ ํ ์์ (0) | 2023.08.30 |
[spring-data-jpa] ํ์ด์ง๊ณผ ์ ๋ ฌ (0) | 2023.08.02 |