-2

在我的数据库表中,我有 40 行,我想选择最后一行 id(主键),所以我使用了下面的代码,但它返回 14 而不是 40 怎么办?

$num = mysql_query("SELECT id FROM result ORDER BY id DESC LIMIT 1");
4

2 回答 2

0

也许 order by 是按词法排序的,
将 id 转换为 int。

尝试这个:

$num = mysql_query("SELECT id FROM result ORDER BY cast(ID as unsigned) DESC LIMIT 1");

这是小提琴: http ://sqlfiddle.com/#!2/1e214/1

http://www.acrobatfaq.com/atbref5/index/ObjectsConcepts/Codingconventions/Sorting-lexicalandnumeri.html

于 2013-08-02T11:10:07.203 回答
0

尝试这个:

SELECT MAX(id) FROM result
于 2013-08-02T11:13:54.657 回答