저는 mysql5를 사용하고 있습니다.SQL 요청을 사용하여 백분율을 계산하는 방법
SQL 요청을 사용하여 백분율을 계산하고 싶지만 그렇게 할 수 없습니다.
환경마다 백분율을 계산하고 싶지만 환경에 대한 백분율을 계산하면됩니다.
두 개의 SQL 문을 작성했습니다. 하나는 성공 결과가있는 성공 테스트의 수를 반환하고 두 번째는 성공 테스트의 총 수를 반환합니다.
각각 제대로 작동하지만 동일한 계산서에서 백분율을 계산할 수는 없습니다.
첫 번째 SQL 문 :
SELECT count(result.success),
result.RESULT_ENV
FROM result,
scenario,
env
WHERE result.RESULT_ENV = env.ENV_URL
AND scenario.PHASE_ID = result.RESULT_PHASE
AND scenario.PHASE_ID = "availibility"
AND result.TIME BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:12:59'
AND result.TIME NOT BETWEEN
(
SELECT MW_DB
FROM mw
WHERE MW_DB BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:12:59'
) AND
(
SELECT MW_DF
FROM mw
WHERE MW_DB BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:00:55'
)
AND result.SUCCESS = "ok"
GROUP BY result.RESULT_ENV
반환 :
number | RESULT_ENV
--------+------------------
6 | http://somip1
1 | http://somip2
두 번째 SQL 문 :
SELECT count(result.success),
result.RESULT_ENV
FROM result,
scenario,
env
WHERE result.RESULT_ENV = env.ENV_URL
AND scenario.PHASE_ID = result.RESULT_PHASE
AND scenario.PHASE_ID = "availibility"
AND result.TIME BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:12:59'
AND result.TIME NOT BETWEEN
(
SELECT MW_DB
FROM mw
WHERE MW_DB BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:12:59'
) AND
(
SELECT MW_DF
FROM mw
WHERE MW_DB BETWEEN '2011-07-14 12:00:00' AND '2011-07-15 10:00:55'
)
GROUP BY result.RESULT_ENV
반환 :
number | RESULT_ENV
--------+------------------
8 | http://somip1
2 | http://somip2
,
결과는 같아야합니다
percent | RESULT_ENV
--------+------------------
75 | http://somip1
50 | http://somip2
혼란스럽게 말로 표현되었지만 완전히 지정되지 않은 질문입니다. 대답 할 수 없습니다. –