Выделить максимальное и минимальное значение

kentyxa_

Новичок
Из БД MySQL выводятся числа, как выделить максимальное и минимальное значение? В Яндекс метрике подобное реализовано...

Код:
PHP:
<?php

$result = mysql_query("SELECT * FROM income WHERE month='декабрь' AND year='2013'") or die(mysql_error());

while($data = mysql_fetch_array($result)){
echo '<p>'.$data['pay'].'</p>';
}

?>
 

Вложения

Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
kentyxa_, найти минимальное и максимальное, делается сие или запросом в mysql с MIN()/MAX(), либо путем написания кода на php. Тебе какое решение нравится?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Если в лоб, то так:
Перебираешь данные в цикле, и смотришь, если предыдущая переменная больше следующей - присваиваешь ее значение максимуму, если меньше - минимуму, либо просто выбираешь все значения в массив [1,2,3,4,5], после чего не мучаясь ищешь там максимум через http://www.php.net/manual/ru/function.max.php и http://www.php.net/manual/ru/function.min.php
 

chira

Новичок
Вурдалак, не понятно о чём твой коментарий, при чём здесь race condition, какой view, в чём "большой вопрос" об эффективности если речь идёт пока только о max и min?
 

Вурдалак

Продвинутый новичок
chira, вот видишь сколько ещё вещей тебе предстоить узнать в жизни, прежде чем советами разбрасываться.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
chira, открой глаза на уровень php у автора, он захотел на php решить вопрос, о чем сам сказал. Понятное дело, что можно решить на мускуле все, но это не этот раз =)
 

Вурдалак

Продвинутый новичок
c0dex, если ты уже фетчишь массив данных, то зачем делать MIN/MAX на стороне MySQL? Ты будешь делать через UNION, транзакцию? В противном случае нет гарантий, что у тебя MIN/MAX не изменится с момента запроса самих данных и пользователь в интерфейсе увидит хрен. Да и вообще, нафиг, если я хочу базу данных заглушкой заменить, разве не проще знать, что view сам это сделает?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Вурдалак, вопрос конечно спорный, а если у нас стопицот записей в таблице? выводится на странице 20, но минимум и максимум надо все же подсветить, если они попадают на нее? Решений много можно придумать.
 

Вурдалак

Продвинутый новичок
c0dex, так в том-то и дело, что он просит указать MIN/MAX у того, что уже выведено. Ты передаёшь во view массив данных. Сообщать отдельным значением $min и $max не нужно, view сам найти это сможет.
 
Сверху