【发布时间】:2014-03-10 19:21:59
【问题描述】:
tbl_contacts:-
user_id - int
contact_id - int
first_name - varchar
last_name - varchar
date_backup - TIMESTAMP
我有很多数据,我想从数据库中获取最新的数据。
目前我有 2 个不同日期的数据,1 个是 2014-02-12 04:47:39,另一个是 2014-01-12 04:47:39。我总共有 125 条记录,其中 5 条是 2014-01-12 04:47:39 日期,其余的是 2014-02-12 04:47:39。我正在使用以下查询来获取最新的日期数据,但它以某种方式返回所有数据。我一直在努力,但无法成功实现我的目标。如果有人有任何想法,请帮助我。
查询
SELECT `contact_id`, `user_id`, `date_backup`, `first_name`, `last_name`
FROM tbl_contacts WHERE `date_backup` IN (
SELECT MAX(`date_backup`)
FROM tbl_contacts WHERE `user_id`= 1 GROUP BY `contact_id`
)
ORDER BY `contact_id`ASC, `date_backup` DESC
通过使用 ORDER BY date_backup DESC,我得到了列表末尾的旧数据。但是如果有新的日期记录,我根本不想要旧的日期记录。
【问题讨论】:
-
试试:
ORDER BY date_backup DESC, contact_id ASC. -
不工作,最后仍然显示旧记录。