Mysql AVG는 0을 무시합니다.



null zero (3)

열에서 평균을 수행해야하지만 해당 열의 값이 대부분 0임을 알고 있습니다. 가능한 모든 행 중에서 2 개만 양수 값을 가질 것입니다. 어떻게하면 0을 무시하고 실제 값만 평균화하도록 mySQL에 지시 할 수 있습니까?

https://ffff65535.com


0으로 변환하면 NULL 이 아닌 AVG() 함수가 작동합니다.

UPDATE table SET column = NULL WHERE column='0';
SELECT AVG(column) FROM table;

WHERE 절을 통해이를 제어 할 수 있습니다.

select avg( field ) from table where field > 0

select avg(your_column) 
from your_table 
where your_column != 0




average