如何从数据库(oracle,mysql)中取出根据ID分组后,时间最大的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从数据库(oracle,mysql)中取出根据ID分组后,时间最大的数据相关的知识,希望对你有一定的参考价值。

参考技术A select *  from (select row_number() over(partition by id order by create_tiem desc) rn, id, create_time, ... , ... from table )t1 where rn = 1;

在这里...代表的是字段名称,将需要的字段名称放在这里,需要哪些放那些。

SELECT t.*FROM (select * from `table` order by `create_time` desc limit 10000000000) t GROUP BY t.id;

在这里就是先将数据进行排序然后再分组,然后取出的是最大的一个值,这里有点要注意,limit 10000000000这个根据不同的版本看是否要加这个,5.5之前的不用加,之后的要加,反正加上肯定没有错。

group by后取的一条数据默认是按主键id排序后的第一条

以上是关于如何从数据库(oracle,mysql)中取出根据ID分组后,时间最大的数据的主要内容,如果未能解决你的问题,请参考以下文章

pgsql中如何取出一月有多少天

如何从 Oracle-Procedure 中取出单曲?

PHP从mysql中取出多组数据 如何加入数组中并转成JSON数组

想请教下在oracle中如何实现获取一张表中,设定开始时间和结束时间,并且根据时间间隔来查询出来的数据。

ibatis中xml文件中sql语句如何把oracle中取出来的数据设为10条

sql从身份证中取出出生日期