MySQL的选择五种最近的ID
我只是想吐出(IDS)创造了最近5行,所以我可以通过PHP比较到另一个数据库中出现重复的插入和更新:MySQL的选择五种最近的ID
SELECT MAX(ID), MAX(DATE) from table ORDER BY ID LIMIT 5
应该吐出这样的事情:
ID DATE
4018 2012-03-01
4017 2012-03-01
4016 2012-02-25
4015 2012-02-15
4014 2012-02-11
使用DESC
排序首先得到的最高值。我假设你的ID是逐步建立......
SELECT ID, DATE from table ORDER BY ID DESC LIMIT 5
我想我已经尝试过了,谢谢你,先生。 – ToddN 2012-03-02 18:36:10
,除非你想有一个单列,则不应使用MAX
,或使用GROUP BY
时。您的查询应该很简单
SELECT ID, DATE from table ORDER BY ID DESC LIMIT 5
我不明白当前的查询。根据你的描述,你只是想通过id desc来订购你的结果。为什么使用MAX(ID)和MAX(日期)。我只记得你DATE是一个保留关键字。
我想查询应该是SELECT ID,
DATE FROM table ORDER BY ID DEST LIMIT 5 OFFSET 0
如果由于某种原因,较高的ID不拿出一个更近的日期,你可以用它来获取日期“真正的”排序:
SELECT id, date FROM table ORDER BY date_format(date, '%Y%m%d') DESC LIMIT 5;
链接: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format
在进行进一步测试时,这可能会证明是有益的,谢谢你的支持。 – ToddN 2012-03-02 18:39:54
顺序按id降序不工作? – 2012-03-02 18:35:30
它确实工作我一直困惑于什么时候使用DESC,因为我的一个字段命名为DESC! – ToddN 2012-03-02 18:38:45