SQL은 어려워

Today I Learned 날짜 2023년 12월 19일 화요일 내용 너무 힘들다. 흑흑 SQL 데모 로그인은 로그인의 로직을 이용해 만들었다. 로그인 함수가 호출되면, 해당 계정 정보가 관계를 갖고 있는 shop들을 불러와 shops 라는 배열에 담는다. 데모 로그인 때는, 가져온 후 데모로 설정한 shop_id와 일치하는 것만 남기도록 처리하였다. 이 과정이 DB에 영향을 끼치지 않도록 하기 위해, DB에 최근 접근 시간을 업데이트하고 commit하는 이후에 해당 로직을 추가하였다. shop들을 가져와 배열에 담는 joinedload에 특정한 조건을 추가하는 코드를 작성해야 했다. 사실 이 부분에서도 많이 헷갈렸는데, joinedload가 일반 join과 다른 점은 eager loading이라느 것이다. 간단히 말하자면 lazy-loading은 레코드를 조회할 때 연관관계가 있는 데이터들의 조회를 필요한 순간까지 미루는 것이고 eager-loading은 레코드를 조회할 때 연관이 있으면 다 가져와놓는 것이다. 지금 고민하는 부분과는 다른 이야기이니 차치하고, join과는 언제 연관된 데이터를 갖고 오느냐만 다르다는 의미이다. ...

2023년 12월 19일 · 2 분 · 배준수