Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Получение суммы значений из столбца

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: из всех или нескольких строк
Стас
Отправлено: 01 Июля, 2007 - 10:53:36
Post Id


Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2007  


Помог: 0 раз(а)

[+]


Пусть у меня есть таблица table, в ней есть столбец num типа int. Можно ли написать такой запрос, чтобы MySQL возвратила сумму значений из столбца num?
 
 Top
evgenijj
Отправлено: 01 Июля, 2007 - 11:59:15
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Стас пишет:
Пусть у меня есть таблица table, в ней есть столбец num типа int. Можно ли написать такой запрос, чтобы MySQL возвратила сумму значений из столбца num?


SELECT SUM(num) FROM mytable;
 
 Top
Стас
Отправлено: 01 Июля, 2007 - 12:27:30
Post Id


Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2007  


Помог: 0 раз(а)

[+]


Спасибо!
 
 Top
Zalupoper
Отправлено: 22 Октября, 2008 - 07:54:14
Post Id


Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Дабы не создавать новую тему, имеется вопрос!
Не мог бы кто подсказать как теперь этот SQL запрос внедрить в php и вывести его соответсвенно.
Пробывал запрос через mysql> консоль - все выполняется.
Буду весьма благодарен. Знаю что в 2 строчки делается, но у меня по чему то не получается.
 
 Top
Champion Супермодератор
Отправлено: 22 Октября, 2008 - 08:46:47
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Нуу...как бы... Внедрить в php - mysql_query, потом результат помещаем в массив mysql_fetch_***, ну а вывести echo, print, var_dump, print_r
 
 Top
Zalupoper
Отправлено: 22 Октября, 2008 - 17:40:40
Post Id


Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




-- Возвращает информацию о колонке из результата запроса в виде объекта.
PHP:
скопировать код в буфер обмена
  1.  
  2. $links = mysql_connect("localhost", "root", "heidelberg");
  3. mysql_select_db("database", $links);
  4.  
  5. $results_sum = mysql_query("SELECT SUM(size) FROM item", $links);
  6. $mysql_fetch = mysql_fetch_field($results_sum);
  7. echo "$mysql_fetch<br />";


Ошибку кажет: Catchable fatal error: Object of class stdClass could not be converted to string
Попробывал все:

Результата нет.
(Добавление)
Парни решение я нашел! вот так:

$results_sum = mysql_query("SELECT SUM(size) FROM item", $links);
$mysql_fetch = mysql_result($results_sum, 'o');
echo "$mysql_fetch<br />";

Я так делал и до этого но вот не указывал '0', и у меня ничего не работало, а сейчас сделал так и все показывает. Осталось округление сделать а то после запятой 11 знаков.

Вопрос по теме. Кто сможет объяснить зачем нужен 0 в строке $mysql_fetch = mysql_result($results_sum, 'o');

и как округлить результат. Спасибо!
(Добавление)
Парни нашел округление до целого числа, вот так:
$results_sum = mysql_query("SELECT SUM(size) FROM item", $links);
$mysql_fetch = mysql_result($results_sum, 'o');
$foo = round($mysql_fetch);

Но не нашел в мануале чтобы оставить 1 знак после запятой. Если кто знает то буду благодарен.

(Отредактировано автором: 22 Октября, 2008 - 17:41:32)

 
 Top
Champion Супермодератор
Отправлено: 23 Октября, 2008 - 08:53:54
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Zalupoper пишет:
mysql_result
вторым параметром принимает номер строки. 0 - первая первая строчка.

Функции mysql_fetch_array и пр. возвращают МАССИВЫ или объекты. Так что echo их не выведет. если хотите просмотреть все элементы результата, есть var_dump...
(Добавление)
Zalupoper пишет:
чтобы оставить 1 знак после запятой.

round(float, точночть)
 
 Top
Zalupoper
Отправлено: 24 Октября, 2008 - 09:18:03
Post Id


Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Champion, большое спасибо! Очень выручил!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB