2010-06-04 26 views

回答

2
SELECT * from yourTable ORDER BY `id` DESC LIMIT 1; 

另一个(更好)的方法是有一个“DATE_ADDED”列(date_added TIMESTAMP DEFAULT CURRENT_TIMESTAMP),这样您就可以通过该列降序排序代替。日期比ID分配更可靠。

+0

这很可能是在这一点上的所有建议中最快的:) – 2010-06-04 15:44:44

+0

是啊!这也很简单。 – 2010-06-04 17:53:31

0

SELECT Primary_Key_Field FROM table ORDER BY Primary_Key_Field DESC LIMIT 1

更换Primary_Key_Fieldtable明显:)

3
ORDER BY SomeColumn DESC 
LIMIT 1 

use the MAX() function 

因为你没有给餐桌的任何细节是很难回答

1

自动递增的ID列并不总是插入的最新记录,我记得这种行为真的很痛苦。具体情况,当时是mysql 4.1.x,有近100万条记录,其中3条删除了everiday中的1条,其他条目在接下来的24小时内被插入。当我意识到通过ID订购它们并没有按年龄排序时,它造成了巨大的混乱......

从那时起,我使用特定列进行与年龄有关的排序,并在每行插入填充这些字段date = NOW() 。 当然,它会工作,找到你想要的最新记录,做一个ORDER BY date DESC LIMIT 0,1在您的查询

+0

ID对我来说工作得很好,我每天晚上都会清理桌子。但这是一个很好的观点。 – 2010-06-04 16:21:14