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 :: Узнать последний id в таблице

 PHP.SU

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


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

> Без описания
Alex_dark74
Отправлено: 07 Августа, 2013 - 16:30:39
Post Id


Частый гость


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


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




Доброго времени суток!
Есть таблица в которой id ставиться auto_increment.
Поля заполнял в ручную, то есть не скриптом.

Как сформировать запрос, что бы выбрать строку с максимальным ID&
 
 Top
esterio
Отправлено: 07 Августа, 2013 - 16:31:38
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `TableName` ORDER BY `id` DESC LIMIT 1
 
 Top
eai
Отправлено: 07 Августа, 2013 - 16:59:42
Post Id



Частый посетитель


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


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




При таком подходе не помешает иметь таблицу

VARCHAR TABLE_NAME
INT LAST_ID
 
 Top
esterio
Отправлено: 07 Августа, 2013 - 17:11:38
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




eai пишет:
При таком подходе не помешает иметь таблицу

VARCHAR TABLE_NAME
INT LAST_ID

Вы что курите?
 
 Top
Triton682
Отправлено: 07 Августа, 2013 - 17:15:33
Post Id


Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Июль 2013  


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




или так:
PHP:
скопировать код в буфер обмена
  1.  
  2. /*------------------Получаем максимальный ID в таблице-------------*/
  3. $query='SELECT MAX(id) FROM tablename';
  4. $query=mysql_fetch_row(mysql_query($query));
  5. $max_id=$query[0];
  6.  
  7. echo $max_id.' - Максимальный ID в таблице.<br />';
  8. /*-----------------------------------------------------------------*/
  9.  
  10. /*------------------------Выводим запись с максимальным ID---------*/
  11. $query='SELECT * FROM tablename WHERE id='.$max_id.'';
  12. $result=mysql_fetch_array(mysql_query($query));
  13.  
  14. echo $result['field1'].' '.$result['field2'].' '.$result['field3'];
  15. /*-----------------------------------------------------------------*/
  16.  


field1,field2,field3 = имя полей.
tablename = имя таблицы.
id = имя поля с primary key.
 
 Top
eai
Отправлено: 07 Августа, 2013 - 17:16:38
Post Id



Частый посетитель


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


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




esterio пишет:
eai пишет:
При таком подходе не помешает иметь таблицу

VARCHAR TABLE_NAME
INT LAST_ID

Вы что курите?


В смысле ?
Классически подход связанный с возможностью портирования на разные СУБД
Создается таблица которая хранит ID , там и получают новый ID

P.S.
Chesterfield Улыбка
 
 Top
DelphinPRO
Отправлено: 07 Августа, 2013 - 17:18:40
Post Id



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


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


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




Alex_dark74 пишет:
Как сформировать запрос, что бы выбрать строку с максимальным ID&

а нафига оно нужно?


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Triton682
Отправлено: 07 Августа, 2013 - 17:31:37
Post Id


Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Июль 2013  


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




DelphinPRO пишет:
Alex_dark74 пишет:
Как сформировать запрос, что бы выбрать строку с максимальным ID&

а нафига оно нужно?

например, если id auto increment, знать id последней добавленной записи
 
 Top
EuGen Администратор
Отправлено: 07 Августа, 2013 - 17:42:42
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Fetis
Отправлено: 07 Августа, 2013 - 17:50:56
Post Id



Частый гость


Покинул форум
Сообщений всего: 153
Дата рег-ции: Дек. 2012  
Откуда: Киров, Россия


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




EuGen пишет:
mysqli_insert_id

А вернет ли он ID-шник, вставленный руками?
Можно поговнокодить и юзать:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT max(last_insert_id(name)) FROM table_name;

(Отредактировано автором: 07 Августа, 2013 - 17:59:28)

 
 Top
DelphinPRO
Отправлено: 07 Августа, 2013 - 18:46:15
Post Id



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


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


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




Triton682 пишет:
например, если id auto increment, знать id последней добавленной записи

последняя добавленная не всегда с наибольшим ID/
вопрос остался открытым: нафига узнавать максимальный ID ?


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Unit221
Отправлено: 08 Августа, 2013 - 14:01:07
Post Id


Новичок


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


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




Добрый день.

Попробуйте воспользоваться SELECT LAST_INSERT_ID() она вернёт вам последний id добавленной записи.

Как сказал DelphinPRO возможно для решения вашей задачи есть способ попроще. Раскажите зачем вам максимальный номер id. И возможно мы сможем вам помочь.
 
 Top
esterio
Отправлено: 08 Августа, 2013 - 14:05:40
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




Alex_dark74 пишет:
Поля заполнял в ручную, то есть не скриптом.

Ключовая фраза в даном топике. И яя не понимяю зачем указивать вручную поле auto_increment
 
 Top
EuGen Администратор
Отправлено: 08 Августа, 2013 - 14:10:40
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




esterio пишет:
Ключовая фраза в даном топике. И яя не понимяю зачем указивать вручную поле auto_incremen

А я не понимаю, откуда следует, что id был указан вручную, по этой причине предложив
EuGen пишет:
mysqli_insert_id


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB