Обработка данных в массиве
leeloo 26.06.2019 11:49
Здравствуйте!
Заранее извиняюсь, вопрос возможно не совсем по языку, а скорее по алгоритму, но, возможно в синтаксисе есть какие то решения, которые я пока самостоятельно не учла так как сравнительно недавно начала изучать парсер.
Задача такая, есть записи в таблице у каждой несколько параметров и каждый параметр имеет значения: 2, 1, 0 и "н"(нет оценки)
Нужно считать средний балл в процентах.
Раньше Н и 0 - были равнозначными и я считала прямо из базы данных запросом:
SELECT p1+p2+p3 as mark ...
А потом в парсере:
$result.mark просто делила на три и множила на 100. Получалась средняя оценка в процентах.
Например:
Qwert 2 2 2 -- 100%
Asdf 1 1 1 -- 50%
Zxcvb 0 0 0 -- 0%
Tyui 2 1 0 -- 50%
Сейчас же добавился параметр Н (нет оценки). И результат должен быть только на основании тех параметров, у которых оценка есть. Например
Qwert 2 2 2 -- 100%
Asdf 2 Н Н -- 100%
Zxcvb 1 1 Н -- 50%
Tyui Н Н 0 -- 0%
Jkjkj 2 1 Н -- 75%
И тут я уже не знаю как оптимальнее всего поступить(
Буду очень благодарна за, хотя бы идею, как это реализовать
- Обработка данных в массиве, leeloo 26.06.2019 11:49
- Ответ, leeloo 26.06.2019 11:51
- Ответ, leeloo 26.06.2019 16:12