Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как перебрать массив без повторений?
 
 автор: Junkie25   (23.12.2008 в 09:36)   письмо автору
 
 

Здравствуйте! Есть такой массив:
 
Array ( [1] => Array ( [name] => MTS [label] => [count] => 543 ) [2] => Array ( [name] => Utel [label] => [count] => 217 ) [3] => Array ( [name] => MTS [label] => [count] => 171 )) ... 
 

и так на кучу орераторов, имена которых повторяются по несколько раз. Как можно сложить значения "[count]" для всех одинаковых имен и переделать массив без повторений?

  Ответить  
 
 автор: Николай2357   (23.12.2008 в 12:41)   письмо автору
 
   для: Junkie25   (23.12.2008 в 09:36)
 

Форму покажите

  Ответить  
 
 автор: Junkie25   (23.12.2008 в 13:24)   письмо автору
 
   для: Николай2357   (23.12.2008 в 12:41)
 

какую форму? это из бд такое извлекается. мне надо отсортировать массив или может sql запрос переписать...

  Ответить  
 
 автор: Junkie25   (23.12.2008 в 13:28)   письмо автору
 
   для: 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 почти ничего не понимаю

  Ответить  
 
 автор: Loki   (23.12.2008 в 13:33)   письмо автору
 
   для: 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 

  Ответить  
 
 автор: Junkie25   (23.12.2008 в 13:56)   письмо автору
 
   для: Loki   (23.12.2008 в 13:33)
 

работает, но сортировать перестал, до изменений сортировал по убыванию

  Ответить  
 
 автор: Junkie25   (23.12.2008 в 15:16)   письмо автору
 
   для: Junkie25   (23.12.2008 в 13:56)
 

что делает это изменение:
SUM(`top_operators_stat`.`count`) as `count`

помоему в нем дело

  Ответить  
 
 автор: Loki   (23.12.2008 в 15:19)   письмо автору
 
   для: Junkie25   (23.12.2008 в 13:56)
 

ORDER BY `count` DESC  

  Ответить  
 
 автор: Junkie25   (23.12.2008 в 15:44)   письмо автору
 
   для: Loki   (23.12.2008 в 15:19)
 

Спасибо! Теперь работает как надо!
:))

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования