작성
·
15
0
안녕하세요
(2) LEFT JOIN 사용 방법 준수 - 오타 질문 (3:58 부근) 에서 첫 번째 SQL이 아래와 같이 써있는데요
select u.id, u.name, ua.value
from user u
left join user_attribute ua on ua.user_id=u.id
where ua.name='address'
where 조건에 ua.name이 아니고, ua.value가 아닐까 의미적으로 맞는게 아닌가 싶어서 질문드립니다.
전체 스키마가 있는게 아니다보니 제가 오해한 걸수도 있어서, user, user_attribute 테이블 전체 스키마를 주시면 감사하겠습니다!
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. rex님.
LEFT JOIN의 사용에 있어서 WHERE 조건에 대한 오타 가능성에 대해 질문 주셨군요. 해당 WHERE 조건에 ua.name='address'
부분은 ua.value='address'
로 수정이 필요한지에 대해 궁금증을 가지고 계신 것 같습니다.
이는 실제 스키마와 논리에 따라 다를 수 있는 부분입니다. 일반적으로, ua.name='address'
는 특정 속성(attribute) 이름이 ‘address’일 경우를 필터링하는 조건입니다. 만약 ua.value
가 주소 정보를 포함하고 있다면, ua.value
을 기준으로 필터링하는 것이 더 의미적일 수 있습니다.
다음은 스키마가 전제된 상황에서 각 의미에 대한 예시입니다:
ua.name='address'
: 속성이름이 ‘address’인 경우를 필터링 -> 속성을 식별ua.value='address'
: 속성 값이 ‘address’인 경우를 필터링 -> 주소 정보를 확인스키마 전체를 제공하지 않는 한 확정적인 결론을 내리기는 어렵습니다. 다만, WHERE 절의 조건이 schema 구조 및 데이터 논리에 따라 다르게 해석될 수 있기에 명확한 결과를 원할 경우, 스키마 정보에 맞게 붙여진 용어들이 올바른지 확인하는 것이 중요합니다.
관련된 기존 질문 및 답변 링크를 참조하실 수 있도록 아래를 제공합니다:
- ep 3 5분 16초 경 설명 질문 있습니다.
해당 답변을 통해 비슷한 SQL문의 오타 및 핸들링 방식을 참고하실 수 있습니다. 스키마 구성이 필요한 경우에는 강의 자료나 추가적인 강의를 통해 확인 부탁드리며, 클라이언트의 요구사항에 맞게 조정이 필요할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.