У меня есть таблица вроде этого:Оптимизация расчета процентов SQL запросы
------------------
sl no | Error type
------------------
1 | err1
------------------
2 | err2
------------------
3 | err1
------------------
4 | err2
------------------
5 | err2
------------------
6 | err3
------------------
Результата Я хочу:
---------------------------
Error type | Count | %
---------------------------
err1 | 2 | 33.33
---------------------------
err2 | 3 | 50
---------------------------
err3 | 1 | 16.66
---------------------------
Я использую следующий запрос, чтобы получить выше результата:
select
error as Error,
count(*) as Count,
100* count(*)/(select count(*) from logs) as Percentage
from logs
group by error;
Оптимизирован ли он для задачи? Если нет, то какие другие эффективные способы получить эту информацию?
Вы считаете, что ваш вопрос 'select count (*) из подзапроса logs'? Или у вас есть еще одна проблема? –
Это работает достаточно быстро для вас? Не беспокойтесь об эффективности, если это не станет проблемой. –
@MichaelPetito Да – Abhijeet