MySQL 데이터베이스에 세 개의 테이블이 있습니다. 첫 번째 테이블에는 사용자가 포함되고 두 번째 테이블에는 프로젝트가 포함됩니다. 아래는 이 둘의 구조이다.
으아아아세 번째 테이블은 조인 테이블입니다.
으아아아사용자 목록과 사용자에게 할당되지 않은 프로젝트 목록을 반환하는 쿼리를 원합니다.
예제에서 다음 사용자가 있습니다
으아아아다음 아이템도 있어요
으아아아내 조인 테이블에서
으아아아그래서 사용자가 소유하지 않은 항목 목록을 가져오고 싶습니다. 예를 들면 다음과 같습니다.
으아아아이런 결과를 얻는 가장 좋은 쿼리는 무엇인가요? 일부 왼쪽 조인, 왼쪽 외부 조인, 왼쪽 조인 등을 시도했지만 성공하지 못했습니다.
편집 1: 지금까지 나는 다음 쿼리를 시도했습니다:
으으으으P粉8180888802023-09-11 10:51:22
일반적으로 交叉联接
사용자 및 제품을 사용하여 가능한 모든 조합을 생성한 다음 브리지 테이블에 이미 존재하는 연결을 필터링합니다.
성능을 향상하려면 user_items(userid, itemid)
上的索引(如果您对这些列有唯一
이미 존재해야 하는 제약 조건이 필요합니다. p>
역을 사용하여 左连接
논리를 표현할 수도 있습니다: