How can I get the lates开发者_高级运维t ID in a table?
If you mean the latest generated ID from an insert statement with an auto-increment column, then mysql_insert_id() should help ya out
SELECT max(id) FROM table
SELECT id FROM table ORDER BY id DESC LIMIT 1
should work as well
IF you've just inserted into a table with auto_increment
you can run right after your query.
SELECT last_insert_id();
Otherwise the max(id) FROM table
If the table has an auto_increment column defined - you can check by looking for "auto_increment" in the output from DESC your_table
, use:
mysql_insert_id
Otherwise, you have these options:
SELECT MAX(id) FROM your_table
SELECT id FROM your_table ORDER BY id LIMIT 1
If there are no inserts being done on a table, then SELECT MAX(ID) should be fine. However, every database has a built-in function to return the most recently created primary key of a table after an insert has been performed. If that's what you're after, don't use MAX().
http://www.iknowkungfoo.com/blog/index.cfm/2008/6/1/Please-stop-using-SELECT-MAX-id
Also, for the id of the last record inserted, if you're using MySQLi, it would look like this:
$mysqli->insert_id
http://php.net/manual/en/mysqli.insert-id.php
精彩评论