[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как найти максимальное значение поля
Гость_User
Здравствуйте.
Как найти максимальное значение поля?

Выбрать все где поле id(int) имеет максимальное значение.
Чтобы не тормозило при большом количестве записей > 1000.

В общем нужно получить последнее значение поля id, для того чтобы увеличить его на 1 и далее использовать получившееся значение.



Спустя 25 минут, 15 секунд (19.01.2011 - 14:43) sergeiss написал(а):
Чтобы не тормозило, почитай про индексы для таблиц.

Чтобы найти максимальное, почитай про функцию MAX() в SQL. И про GROUP BY.

Спустя 19 минут, 35 секунд (19.01.2011 - 15:03) Guest написал(а):
mysql_query("SELECT MAX(id) FROM table")


Попробую.
А что именно происходит, когда совершается такой запрос?
Функция начинает перебирать каждую из >1000 записей?

Спустя 1 час, 3 минуты, 53 секунды (19.01.2011 - 16:07) T1grOK написал(а):
Если используется autoincrement, тогда last_insert_id().

Спустя 11 минут, 42 секунды (19.01.2011 - 16:19) Гость_User написал(а):
Да, используется.
Тогда что быстрее?

last_insert_id()


или

mysql_query("SELECT MAX(id) FROM table")

Спустя 1 час, 15 минут, 41 секунда (19.01.2011 - 17:34) sergeiss написал(а):
T1grOK - некорректный совет, т.к. поиск может осуществляться далеко не сразу после вставки последнего значения. Это будет уже другая сессия, да плюс к тому за это время уже может быть удален последний или даже несколько последних айди...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.