Вход

Просмотр полной версии : выбрать поле с максимальным значением.


fduch
08.03.2013, 23:57
Подскажите первый вариант кода работает, а второй нет:
$query = "SELECT * FROM `unit` ORDER BY unit_id DESC LIMIT 1 ";
$res = mysql_query($query);

while($row = mysql_fetch_array($res))
{$unit_id= $row['unit_id'];}

это работает ( но нам надо всего 1 значение и while ненужно.
Вот так НЕ работает:

$query = "SELECT * FROM `unit` ORDER BY unit_id DESC LIMIT 1 ";
$res = mysql_query($query);

$row = mysql_fetch_array($res)
$unit_id= $row['unit_id'];
.

И в догонку вопрос, можно как то находить "дыру" в последовательности, например есть цыфры 1 2 3 4 6 7 ,
как мне получить результат 5 а не 8? Данные в mysql

mooncar
09.03.2013, 10:49
В SQL есть функция MAX, которая сразу выбирает запись с максимальным значением. Погуглите примеры c MAX для работы с MySQL.

trng
10.03.2013, 20:31
Поставьте точку с запятой после
$row = mysql_fetch_array($res)
и все заработает.

Добавлено через 4 минуты
А дыру находить перебором (если нет дополнительных вводных типа "максимальное но не больше чем...").