2014-01-24 5 views
-1

У меня есть база данных mysql и вы хотите получить процент, но не можете понять это, несмотря на использование учебников. Для простоты, я один столбец, который называется «StatusCode» 6 записей:MYSQL Views - mathematics percentages

StatusCode 
200 
200 
200 
301 
200 
505 

Все, что я хочу сделать, это:

1) Подсчитать количество строк в столбце - в этом случае 6. Затем я хочу найти% случаев, когда появится конкретный код. Так, например, «200». Я могу ее видеть это появляется в 4 раза, так что мне нужно как-то сказать:

4/6 * 100 = 66%

мне также нужно обрезать это так только 2 цифры.

+0

Было бы неплохо, если вы приложите некоторые усилия, чтобы решить эту проблему самостоятельно. – Strawberry

+0

Я сделал усилие. Я знаю, что это: SELECT COUNT (IF (httpstatuscode = '200', 1, NULL)) FROM crawler1; получает значение «200», и я знаю, что это подсчитывает количество строк: SELECT count (httpstatuscode) FROM crawler1 Я просто не могу поставить один поверх другого и умножить его на 100. –

ответ

0

Вы не говорите, где вы хотите сделать расчеты. Если вы хотите, чтобы этот запрос mysql сделал это за вас, вы можете сделать что-то вроде:

SELECT ROUND(count(*)/(select count(*) from `your_table_name`)*100,0) 
FROM `your_table_name` 
WHERE StatusCode=200 
+0

Удалось исправить это для кого-то еще : выберите (выберите счетчик (1) из искателя1, где httpstatuscode = 200)/count (1) * 100 % от crawler1 –