如何获取mysql重复项中的最后一条数据

如何获取mysql重复项中的最后一条数据,第1张

重复记录是说所有字段都重复吗,没有主键是吗,如果是这样,删除最后一条还是第一条没有区别;

如果说重复记录是不包括主键id的字段,可以使用order by id来排序,获取到最后一条数据

或者用group by(重复的字段),然后用max(id)获取最后的一条

如果是没有规律的取值,那么是没有实际意义的,如果是为了找字段的取值范围,那么可以通过升序和降序查询两次,在作为一个结果输出实现。

sql:select * from(select top 1 * from tblname order by id desc)

union (select top 1 * from tblname order by id asc)

解释:先降序查询出第一条记录,然后在升序查询出第一条记录,之后将结果作为两条数据输出。

查询今天最后一条数据

SELECT * FROM `weibo_logs` where DATEDIFF( NOW(),date)=0 order by `date` desc limit 1

查询符合条件的weibo_user_id每天的一条数据

SELECT weibo_user_id, DATE_FORMAT(date,'%Y-%m-%d') FROM `text` where 'weibo_user_id'='{$source_account->id}' GROUP BY DATE_FORMAT(date,'%Y-%m-%d')

这样会有排序问题,那么就先排序

SELECT DATE_FORMAT(date,'%Y-%m-%d') as d

FROM (SELECT * FROM `text` ORDER BY date DESC) as s

where 'weibo_user_id'='{$source_account->id}'

GROUP BY DATE_FORMAT(date,'%Y-%m-%d')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7388731.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存