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

Форум MySQL

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

 

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

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

тема: Сумма столбцов таблицы
 
 автор: Giga   (22.01.2007 в 12:59)   письмо автору
 
 

Вроде все просто array_sum(array(0=>"2",1=>"3"); сложило и дало сумму 5. Но в таблице My_SQL (сорри что в этот форум мускул влез, но проблема общая php) значение например поля count исключительно числовое. Беру конструкцию вида array_sum(mysql_fetch_array(mysql_query("select `count` from `statistic`"))); без лимита и условий, мне нужна сумма значений всех полей count, всех id. Но получил я в итоге или непонятно откуда взявшееся число (например 6 когда в phpmyadmin в уме сумму прикинул 23), или вообще 0. Что я ни так делаю. Какой правильный синтаксис array_sum. И еще может просветите как правильно просмотреть массив через printf вроде. Может я его вообще не получил.

   
 
 автор: Саня   (22.01.2007 в 13:02)   письмо автору
 
   для: Giga   (22.01.2007 в 12:59)
 

<?
$q 
mysql_query("select `count` from `statistic`");
while ( 
$s mysql_fetch_array($q) ) {
  
$array $s['count'];
}
print 
array_sum($array);

   
 
 автор: cheops   (22.01.2007 в 13:03)   письмо автору
 
   для: Giga   (22.01.2007 в 12:59)
 

Функция mysql_fetch_array() возвращает в виде массива лишь одну запись, а не всю результирующую таблицу. Для подсчёта сумм столбцов, лучше использовать функцию MySQL - SUM()
select sum(`count`) from `statistic`"

   
 
 автор: Trianon   (22.01.2007 в 13:45)   письмо автору
 
   для: Giga   (22.01.2007 в 12:59)
 

просмотреть массив можно через print_r($array);
Перед этим стоит вывести для удобства echo '<pre>';


Что можно получить, складывая все count и id?
Или Вы контрольную сумму считаете?

   
 
 автор: Giga   (22.01.2007 в 19:40)   письмо автору
 
   для: Trianon   (22.01.2007 в 13:45)
 

Спасибо cheops, ваша конструкция самая оптимальная. Жаль что в учебнике softtime на локалке подобного не обнаружил. А насчет зачем? Есть например рекламный блок из 3х ту линков, отдельно учитываю переходы по ним каждого (`id`), и считаю общие, переходы с помощью поднятой темы (`count`). Например сумма по трем рекламным ссылкам главной моего сайта равна за день 50 переходов. Зачем? Планировать активность кликов, счет к оплате, и пр.. К слову это не мне, сапожник как всегда остается без сапог.

   
Rambler's Top100
вверх

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