2012-08-02 120 views
-2

我有两列的表:如何选择最近插入的数据到mysql数据库?

#MY_DATA 
* ID 
* DATA 

我如何写一个SELECT查询获得最近插入的数据(如堆栈)?

+3

是Mysql还是ORACLE? – jcho360 2012-08-02 13:01:31

+0

身份证是身份证吗? – 2012-08-02 13:02:11

+0

这是mysql。只是我想要基于LIFO的选择 – Chinna 2012-08-02 13:08:38

回答

1
Select data from MY_DATA where ID=(select max ID from MY_DATA) 

如果你想多行则

Select data from MY_DATA order by ID desc limit X 

X是正数

+1

这只会给一个记录,不是吗? – JAB 2012-08-02 13:06:47

+0

用**最近**这个词我以为他只想要最后一个。 – Sourav 2012-08-02 13:07:31

+0

不管怎么样,看起来它不起作用,因为他使用的是随机ID而不是自动递增的ID。正如我刚才注意到的那样,意味着'LAST_INSERT_ID()'也不起作用。 – JAB 2012-08-02 13:11:49

0

是你的ID字段自动生成(例如自动增量在甲骨文MySQL或secuence)? 如果是,那么就对其进行排序:

select * from my_table order by id desc 

如果没有,也没有标准的方式。最好的方法是添加一些时间戳记字段,为新记录存储当前日期时间值,然后按此字段排序。

+0

我的ID字段是随机生成的唯一ID,只是我想LIFO(后进先出) – Chinna 2012-08-02 13:07:09

+0

更新回答 – heximal 2012-08-02 13:44:25

相关问题