我有一个表存储一些有关URL的报告,他们有一个像created_date这样的字段。可以多次生成(并存储)相同的报告,因为这些值可能会更改。我怎样才能获得网址报告,但只有最新的?如何从MySQL获取最新记录?
我的表(page_report):
id INT PK
url VARCHAR(255)
created_date TIMESTAMP
的样本数据:
id url created_date
1 google.com 2016-11-01
2 google.com 2016-11-05
3 bing.com 2016-11-03
4 bing.com 2016-11-06
我需要:
id url created_date
1 google.com 2016-11-05
2 bing.com 2016-11-06
我到目前为止有:
SELECT r1.*
FROM page_report r1
LEFT JOIN page_report r2 ON r1.url = r2.url AND r1.created_date < r2.created_date
WHERE r2.url IS NULL;
但它很慢。有没有更好的方法?
希望我提前明确表示感谢!
查询马克斯(CREATED_DATE)。 –
如果URL更改......您如何知道哪些记录与彼此有关? – xQbert
Plz提供样本数据和您的期望输出。 – MasoodUrRehman