익명의 사용자와 등록 된 사용자의 요금을 얻으려고합니다. 그들은 다른 테이블에 있습니다.같은 쿼리에서 MySQL 합계 더하기를 계산합니다.
SELECT product.id, (SUM(users.rate + anonymous.rate)/COUNT(users.rate + anonymous.rate))
FROM products AS product
LEFT JOIN users ON users.id_product = product.id
LEFT JOIN anonymous ON anonymous.id_product = product.id
GROUP BY product.id
ORDER BY product.date DESC
그래서, 테이블은 다음과 같다 : 내 쿼리되어 노력하고있어
users-->
id | rate | id_product | id_user
1 2 2 1
2 4 1 1
3 5 2 2
anonymous-->
id | rate | id_product | ip
1 2 2 192..etc
2 4 1 198..etc
3 5 2 201..etc
: 각 제품에 대해, 내가 비율의 평균을 가지고 싶습니다. 현재 출력은 null이지만 두 테이블 모두에 값이 있습니다.
감사합니다.
['AVG'] (http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_avg)를 사용하지 않는 이유는 무엇입니까? –
나는 헛되이 노력했다. 'AVG (SUM (...))'-> 그룹 함수를 잘못 사용했습니다. – user3065191
SUM/COUNT가 보이지 않습니까? – user3065191