동일한 테이블 내에서 20 가지 다른 비교를 사용하는 MySQL SELECT 쿼리가 있습니다. SELECT
결과가 반환 내 SCORE
라고 나는 컬럼의 순서에 따라 백분위 순위를 계산하기 위해 노력하고있어MySQL - 즉석에서 백분위 수 계산
SELECT * FROM mytable
WHERE (col1 > (col2 * 0.25))
AND (col5 < col10) .......
예를 들면 다음과 같습니다이다. 나는 증분 행 번호와 COUNT(*)
을 사용하여 주식의 순위와 결과의 총 개수를 얻으려고했지만 결과 중 일부가 동일한 계급을 할당하는 방법을 모르겠다. SCORE
.
((COUNT(lower scores) + (COUNT(same/tied scores)/2)) * 100)/COUNT(total results)
을 어떻게 즉석에서 백분위를 계산 같은 결과 행 내에서 낮은 점수, 같은/묶여 점수와 총 점수의 수를 찾을 수 있습니까 : 여기
내가 계산하기 위해 노력하고있어 공식이다 ?내 응용 프로그램 관리자가 내 응용 프로그램 관리 영역 내에서 SELECT 문을 필요에 맞게 조정하기 때문에 저장 프로 시저 사용을 피하려고합니다.
이 문을 UPDATE 문으로 변환하는 간단한 방법이 있습니까? 예를 들어 mytable에 "percentile"이라는 열이 있다고 가정하면 percentile_rank 결과를 각 행의 백분위 열에 저장하도록 명령문을 수정하는 방법이 있습니까? – Todd