Mysql⼀张表通过某⼀字段取多条数据中的最新⼀条
最近在写sql的时候遇到⼀个需求,⼀张表中有多条数据,需要根据创建时间取最新的⼀条,从数据库中根据⽇期字段取最新⼀条
SELECT
u.*
FROM
user u
WHERE
NOT EXISTS (
SELECT
1mysql删除重复的数据保留一条
FROM
user u1
WHERE
u.user_id= u1.user_id
ate_date < u1.create_date
)
原理解释:
第⼀步:先查询出user表中的所有数据;第⼆步:判断NOT EXISTS中是否有结果集返回,如果有结果集返回,则条件为假,最终结果不返回该数据,如果没有结果集返回,则条件为真,最终结果返回该数据。
EXISTS (sql返回结果集为真)
NOT EXISTS(sql 不返回结果集为真(或返回结果集为假))

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。