查询仅选择新添加的记录

时间:2012-03-02 10:22:57

标签: mysql record

由于我是mysql的新手,请让我清楚这个疑问。如何编写查询来查找/选择最新添加的记录?

实施例: 考虑一个表,每天添加一定数量的记录。现在该表包含1000条记录。并且总共1000条记录被取出用于某些表现。有时表添加100条记录。现在我想从1100只拿掉剩下的100来做一些操作。怎么做?

(仅作为示例,我已经给出了数字,但最初我不知道上次更新的计数和新添加的数量)

这里我的表包含三列Sno,时间,数据。其中Sno被索引为主键。

样本表:

| sno | time                | data    |

|   1 | 2012-02-27 12:44:07 |     100 |

|   2 | 2012-02-27 12:44:07 |     120 |

|   3 | 2012-02-27 12:44:07 |     140 |

|   4 | 2012-02-27 12:44:07 |     160 |

|   5 | 2012-02-27 12:44:07 |     180 |


|   6 | 2012-02-27 12:44:07 |     160 |

|   7 | 2012-02-28 13:00:35 |     100 |

|   8 | 2012-03-02 15:23:25 |     160 |

2 个答案:

答案 0 :(得分:5)

使用TIMESTAMP选项添加'ON UPDATE CURRENT_TIMESTAMP'字段,您就可以找到上次添加或上次修改的记录。

Automatic Initialization and Updating for TIMESTAMP

答案 1 :(得分:0)

创建表格如下

Create table sample
(id int auto_increment primary key,
time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
data nvarchar(100)
);

然后查询为

select * from sample order by time desc limit 1