본인은 이러한 테이블이 있습니다복잡한 SQL 쿼리
나는 자신이 소유 + 분류 사진의 총 수에 의해 사용자를 주문하고 싶습니다- Users - id - Photos - id - user_id - Classifications - id - user_id - photo_id
.
나는이 쿼리를 썼다 :SELECT users.id, COUNT(photos.id) AS n_photo, COUNT(classifications.id) AS n_classifications, (COUNT(photos.id) + COUNT(classifications.id)) AS n_sum FROM users LEFT JOIN photos ON (photos.user_id = users.id) LEFT JOIN classifications ON (classifications.user_id = users.id) GROUP BY users.id ORDER BY (COUNT(photos.id) + COUNT(classifications.id)) DESC
문제는 내가 예상대로이 쿼리가 작동하지 않습니다 내가이 DB에서 몇 사진과 분류를 가지고있는 동안 높은 숫자를 반환합니다. 그러면 다음과 같이 반환됩니다 :
id n_photo n_classifications n_sum 29 19241 19241 38482 16 16905 16905 33810 1 431 0 431 ...
우리 모두 가정 SQL 서버있어 - 올바른? 어떤 버전입니까? –
죄송합니다, 그것은 MySQL입니다 ... – collimarco