|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.06.2011, 19:57 | #1 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
Математика в php
вопрос традиционно элементарный...
с помощью формы и функций выводится перечень объектов (из БД) удовлетворяющих заданным значениям (например, больше 5 и менее 10) Как программно вывести количество значений? $result = mysql_query("SELECT a.uid, a.gid,a.url, a.popul, b.name_rus FROM (geo_data AS a INNER JOIN geo_base as b ON a.gid=b.uid) WHERE a.popul>$ot and a.popul<$do ORDER BY a.popul" ); $summ= count($result); echo $summ; так не катит и вообще про математику в php не могу найти как делать округление результата и т.д.? |
26.06.2011, 20:27 | #2 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 679
|
А в чем собственно вопрос??? Вы что считать-то хотите?
То что вы пытаетесь делать, судя по всему - подсчет количества рядов при выборке ... это делает mysql_num_rows($result) Или вы хотите там что-то подсчитать в sql запросе? тогда зачем использовать php (вы говорите о каком-то округлении)? Считайте прямо в sql запросе |
27.06.2011, 00:12 | #3 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
за подсказку спасибо! шас опробуем... а считать?
ну вот например у меня строится выборка а - 1 б - 2 в - 2 г - 4 д- 1 ж- 1 мне нужно сверху добавить в таблицу строку, в которой поставить суммы: Всего значений: 6 Сумма: 11 (как посчитать сумму?) array_sum - это оно? Последний раз редактировалось Dmitry1983; 27.06.2011 в 00:15. |
27.06.2011, 11:45 | #4 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 679
|
О чем вы спрашиваете??? Вы не ответили на вопрос ... я понятия не имею что вы там собираетесь считать ... что такое а,б,в .... количество рядов из 6-ти запросов с селектом? Ну посчитает это array_sum, но фраза
Код:
Если что-то хотите выбрать из таблицы, посчитать, а потом обратно вставить туда же, то ваш способ как минимум не оптимален .... все можно делать одним сложным sql запросом типа INSERT into table (field) SELECT .... from table WHERE .... Хотя смысл всех ваших вычислений мне совсем не понятен |
27.06.2011, 12:46 | #5 |
Форумчанин
Регистрация: 03.05.2011
Сообщений: 158
|
Вы можете сделать ещё один запрос в mysql, можете посчитать это в php
MySQL: вам помогут SUM() и COUNT() php: когда вы в цикле выводите (а я надеюсь вы в цикле выводите) значения из DB, просто добавьте до цикла $count=0; $sum=0; в цикле $count++; $sum+=Суммируемая Переменная После цикла выведите значения $count и $sum. PS: И начинайте же учить простейшие концепции и алгоритмы программирования ! "Программист" без знания основ - как минимум жалок и беспомощен, максимум - изобретает велосипеды и пишет индусский код. (Ладно бы ещё индийский код писали, так нет - пишут индусский.) |
11.07.2011, 19:48 | #6 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
Прошу прощения, был в отпуске...
буду признателен за помощь в оптимизации кода... Суть в следующем - есть перечень объектов и численность персонала у каждого. Необходимо вывести в таблицу перечень объектов удовлетворяющих обозначенным в форме критериям (от 10 до 20 чел.) Проблема: каждую строку рисует отдельной таблицей (я понимаю, что ее в цикл загнал, но запутался) PHP код:
Всего таких объектов: и тут нужна функция суммы или счета (count)? Всего персонала: сумма персонала в этих объектах. Заранее спасибо! |
11.07.2011, 21:33 | #7 |
Форумчанин
Регистрация: 03.05.2011
Сообщений: 158
|
Проще всего сделать ещё один запрос такого вида
SELECT COUNT(a.uid), SUM(A.POPUL) FROM data AS a WHERE a.popul>$ot and a.popul<$do (Запрос такой же, как и у вас, только я выбросил оттуда ненужные в этом случае иннэр джоин и ордер) Т.е. надо вытащить каунт и сум (каунт, соответственно - количество таких объектов, сум - сумма персонала), и вывести результаты, а потом делать запрос на остальные данные и выводить их. Для вывода таблицы надо его (вывод таблицы, открывающий и закрывающий таги) вытащить из цикла: Т.е. вот в этом иф-е сделать вот так PHP код:
Последний раз редактировалось graymaster; 11.07.2011 в 21:38. |
11.07.2011, 22:13 | #8 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
Большущее!!!!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Математика (Си) | linker_mari | Помощь студентам | 2 | 07.11.2010 18:33 |
Математика | zmey31313 | Помощь студентам | 1 | 07.06.2010 15:10 |
математика(( | lumentek | Общие вопросы C/C++ | 3 | 07.06.2010 00:24 |
Математика | terminadoor | Помощь студентам | 3 | 22.09.2008 21:42 |
Математика | doniyor | Общие вопросы Delphi | 2 | 15.05.2008 18:25 |