다음은 두 가지 쿼리 (WHERE 쿼리 및 JOIN 쿼리)입니다. 두 쿼리는 서로 다른 결과 집합을 반환 할 가능성이 있습니다.이 두 쿼리의 차이점
더 많은 행을 반환 할 수있는 쿼리는 무엇입니까?
쿼리에서 다른 수의 행을 반환하기 위해 존재해야하는 데이터의 하위 집합은 무엇입니까?
WHERE 쿼리
SELECT COUNT(u.uid), r.name
FROM role r
LEFT JOIN users_roles ur ON r.rid = ur.rid
LEFT JOIN users u ON ur.uid = u.uid AND u.status <> 0
GROUP BY r.rid
이 두 쿼리의 차이를 DIFF 결과를 반환하고 무슨 주된 이유는 무엇입니까 :
SELECT COUNT(u.uid), r.name
FROM role r
LEFT JOIN users_roles ur ON r.rid = ur.rid
LEFT JOIN users u ON ur.uid = u.uid
WHERE u.status <> 0
GROUP BY r.rid
쿼리를 가입?
+1 즉, WHERE 절은 OUTER JOINS를 'INNER JOIN'으로 변경합니다. – VMai
대단히 감사합니다. – user3826912