|
|
|
| Здравствуйте! Есть такой массив:
Array ( [1] => Array ( [name] => MTS [label] => [count] => 543 ) [2] => Array ( [name] => Utel [label] => [count] => 217 ) [3] => Array ( [name] => MTS [label] => [count] => 171 )) ...
|
и так на кучу орераторов, имена которых повторяются по несколько раз. Как можно сложить значения "[count]" для всех одинаковых имен и переделать массив без повторений? | |
|
|
|
|
|
|
|
для: Junkie25
(23.12.2008 в 09:36)
| | Форму покажите | |
|
|
|
|
|
|
|
для: Николай2357
(23.12.2008 в 12:41)
| | какую форму? это из бд такое извлекается. мне надо отсортировать массив или может sql запрос переписать... | |
|
|
|
|
|
|
|
для: Junkie25
(23.12.2008 в 13:24)
| | сам запрос :
SELECT `top_operators`.`name`, `top_operators`.`label`, `top_operators_stat`.`count`
FROM `top_operators_stat`
LEFT JOIN `top_operators`
ON `top_operators`.`id` = `top_operators_stat`.`id_operator`
WHERE `date` = $today AND `day_week` = $week_day AND `uid` = $uid
ORDER BY `top_operators_stat`.`count` DESC
|
я в mysql почти ничего не понимаю | |
|
|
|
|
|
|
|
для: Junkie25
(23.12.2008 в 13:28)
| | А если вот так:
SELECT `top_operators`.`name`, `top_operators`.`label`, SUM(`top_operators_stat`.`count`) as `count`
FROM `top_operators_stat`
LEFT JOIN `top_operators`
ON `top_operators`.`id` = `top_operators_stat`.`id_operator`
WHERE `date` = $today AND `day_week` = $week_day AND `uid` = $uid
GROUP BY `top_operators`.`name`
ORDER BY `top_operators_stat`.`count` DESC
|
| |
|
|
|
|
|
|
|
для: Loki
(23.12.2008 в 13:33)
| | работает, но сортировать перестал, до изменений сортировал по убыванию | |
|
|
|
|
|
|
|
для: Junkie25
(23.12.2008 в 13:56)
| | что делает это изменение:
SUM(`top_operators_stat`.`count`) as `count`
|
помоему в нем дело | |
|
|
|
|
|
|
|
для: Junkie25
(23.12.2008 в 13:56)
| | | |
|
|
|
|
|
|
|
для: Loki
(23.12.2008 в 15:19)
| | Спасибо! Теперь работает как надо!
:)) | |
|
|
|