my sql 에서 left join 을 사용 하여 where 조건 을 추가 하 는 문제 분석
group 과 factor 두 장의 표 가 있 습 니 다.한 group 은 여러 개의 factor 에 대응 합 니 다.현재 효과 적 인 group 과 대응 하 는 효과 적 인 factor 를 조회 하고 싶 습 니 다.두 표 모두 isDel 논리 삭제 표지 가 있 습 니 다.
첫 번 째 오류 쓰기 1:
SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id where g.isDel=0 and f.isDel=0
LEFT JOIN 키 워드 는 왼쪽 표(tablename 1)오른쪽 표(table)에서 도 모든 줄 을 되 돌려 줍 니 다.name 2)에 일치 하 는 줄 이 없습니다.위 에 이렇게 왼쪽 표 가 오른쪽 표 에 대응 하 는 데이터 가 없 으 면 조회 할 수 없 는 이 유 는 바로
f.isDel=0
이 코드 문제 입 니 다.오류 쓰기 2:
SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id and g.isDel=0 and f.isDel=0
이런 표기 법 은 4.567914.효력 이 발생 하지 않 아 조회 데이터 가 전혀 맞지 않 는 다.원인 분석:
left join 에서 where 와 on 조건 에 대한 몇 가지 지식:
4
SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id and f.isDel=0 where g.isDel=0
결론:1.왼쪽 표 에 조건 제한 을 추가 하려 면 where 조건 에 추가 해 야 하 며,on 뒤에 두 면 안 됩 니 다.
2.오른쪽 표 에 조건 제한 을 on 뒤에 두 고 where 조건 에 추가 하면 데이터 줄 의 차이 에 문제 가 생 길 수 있 습 니 다.
my sql 에서 left join 을 사용 하여 where 조건 을 추가 하 는 문제 분석 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 my sql left join 에 where 내용 을 추가 하 였 습 니 다.예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.