[개발일지] 230504 IN절 안의 foreach문
·
성장이야기/TIL
오늘 새로 배운 내용 foreach문을 이용해 반복해서 쿼리를 날릴 때, 전체적인 쿼리를 날리는 것보다 IN절 안에서 foreach문을 이용해 반복하는 게 효율이 더 좋다. 아래쿼리처럼 foreach문을 작성하면 전달받은 list의 크기만큼 전체 쿼리가 발생하기 때문에 비효율적이다. SELECT * FROM users WHERE user_id = #{userId} 예를 들어 userId가 들은 list의 사이즈가 10이면 "SELECT * FROM users WHERE user_id = #{userId}" 전체 쿼리가 10번이 날아간다. 하지만 전체 쿼리를 10번 반복할 필요 없이 IN절 안에 foreach문을 작성해 주면 전체쿼리 발생수가 한 번으로 줄어들어 쿼리 발생 비용을 줄일 수 있어 더 효율적이..