значение id номера последней строки

Тема в разделе "Базы данных", создана пользователем sunyang, 21 май 2011.

Модераторы: latteo
  1. sunyang

    sunyang

    Регистр.:
    25 апр 2009
    Сообщения:
    444
    Симпатии:
    30
    Как узнать значение ячейки последней строки в таблице?

    Я прописал:

    PHP:
    $result mysql_query("SELECT * FROM tour");
    $result2 mysql_query("SELECT * FROM tour WHERE id=".mysql_num_rows($result));
    echo $result2;

    в таблице 11 строк, id последней строки 24, но выдает:
    Resource id #10

    (Resource id #10 - id 10 строки)

    Как узнать id последней строки?
     
  2. BombermaG

    BombermaG Создатель

    Регистр.:
    6 окт 2009
    Сообщения:
    48
    Симпатии:
    6
    PHP:
    mysql_query("SELECT MAX('id') AS maxid FROM tour");
     
  3. rex1963

    rex1963

    Регистр.:
    19 фев 2007
    Сообщения:
    228
    Симпатии:
    47
    Запрос зависит от типа поля
    для INT
    PHP:
    SELECT maxid FROM 
    для VARCHAR
    PHP:
    SELECT MAXABSid ) )
     
  4. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    если надо узнать id сразу после INSERT то можно так
    PHP:
    $insert mysql_query("INSERT tour SET .....");
    $last_insert mysql_insert_id();
     
  5. stealthdebuger

    stealthdebuger Механик

    Administrator
    Регистр.:
    25 авг 2008
    Сообщения:
    624
    Симпатии:
    1.379
    Если необходимо узнать id после команды INSERT, лучше всего использовать mysql_insert_id() (возвращает ID, сгенерированный колонкой с AUTO_INCREMENT последним запросом INSERT к серверу).
    В других случаях - SELECT MAX(id)
     
    namak нравится это.
  6. boool

    boool Создатель

    Регистр.:
    27 авг 2011
    Сообщения:
    24
    Симпатии:
    0
    пропасал такой запрос:

    PHP:
    $last_id mysql_query("SELECT MAX(id) FROM table"); 
    echo 
    $last_id;
    выбает Resource id #3 ... а где айдишник?)
     
  7. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    PHP:
    $last_id_sql mysql_query("SELECT MAX(id) FROM test_table");
    $row mysql_fetch_array($last_id_sql);
    $last_id $row[0];
    echo 
    $last_id;
    или такой ребус
    PHP:
    $last_id = (is_array($i=mysql_fetch_array(mysql_query("SELECT MAX(id) FROM test_table")))?$i[0]:1);
    echo 
    $last_id;