相关文章推荐
耍酷的枕头  ·  Job Artifacts API | ...·  6 月前    · 
强健的大白菜  ·  python ...·  1 年前    · 
活泼的铁链  ·  Blog post: Action ...·  1 年前    · 
WHERE     id IN (                  SELECT SUBSTRING_INDEX(group_concat( id ORDER BY `storage_time` DESC ), ',', 1 )                  FROM csrc_approved_products_weekly                 GROUP BY application_matters

1.按时间从大到小顺序取出唯一键id列表

SELECT
    group_concat( id ORDER BY `storage_time` DESC ) 
    csrc_approved_products_weekly 
GROUP BY
    application_matters

2.再用SUBSTRING_INDEX函数取出第一个(也就是时间最大的数据id)

SELECT
    SUBSTRING_INDEX( group_concat( id ORDER BY `storage_time` DESC ), ',', 1 ) 
    csrc_approved_products_weekly 
GROUP BY
    application_matters

3.再根据 id查询数据

SELECT
    csrc_approved_products_weekly 
WHERE
    id IN ( 
                SELECT SUBSTRING_INDEX( group_concat( id ORDER BY `storage_time` DESC ), ',', 1 ) 
                FROM csrc_approved_products_weekly 
                GROUP BY application_matters
                                    在SQL使用GROUP BY来对SELECT的结果进行数据分组,在具体使用GROUP BY之前需要知道一些重要的规定。
  1、GROUP BY子句可以包含任意数目的列。也就是说可以在组里再分组,为数据分组提供更细致的控制。
  2、如果在GROUP BY子句指定多个分组,数据将在最后指定的分组上汇总。
  3、GROUP BY子句列出的每个列都必须是检索列或有效的表达式(但不能是聚集函数)。如果在SELECT使用了表达式,则必须在GROUP BY子句指定相同的表达式。不能使用别名。
  4、出了聚集计算语句外,SELECT语句的每一列都必须在GROUP BY子句给出。
                                    –按某一字段分组最大(小)值所在行的数据  代码如下: /* 数据如下: nameval memo a 2 a2(a的第二个值) a 1 a1–a的第一个值 a 3 a3:a的第三个值 b 1 b1–b的第一个值 b 3 b3:b的第三个值 b 2 b2b2b2b2 b 4 b4b4 b 5 b5b5b5b5b5 */  –创建表并插入数据:  代码如下: create table tb(name varchar(10),val int,memo varchar(20)) insert into tb values(‘a’, 2, ‘a2(a的第二个值)’) insert into tb 
                                    Oraclegroup by用法
在select 语句可以使用group by 子句将行划分成较小的组,一旦使用分组后select操作的对象变为各个分组后的数据,使用聚组函数返回的是每一个组的汇总信息。
使用having子句 限制返回的结果集。group by 子句可以将查询结果分组,并返回行的汇总信息Oracle 按照group by 子句指定的表达式的值分组查询结果。
在带有group by 子句的查询语句,在select 列表指定的列要么是group by 子句指定的列,要么包含聚组函数 select max(sal),job emp group by job; (注意
                                    在进行数据分析、数据建模时,我们首先要做的就是对数据进行处理,提取我们需要的信息。下面为大家介绍一些groupby的用法,以便能够更加方便地进行数据处理。我们往往在使用groupby进行信息提取时,往往是求分组后样本的一些统计量(max、min,var等)。如果现在我们希望取一下分组后样本的第二条记录,倒数第三条记录,这个该如何操作呢?我们可以通过first、last来提取分组后第一条和最后一条样...
import pandas as pd
df = pd.DataFrame({'class':['a','a','b','b','a','a','b','c','c'],'score':[3,5,6,7,8,9,10,11,14]}) 
                                    sqlgroup by 分组后的组内最新(最大,最…)的一条数数据
最近一个有个需求是 , 取分组后的组内最新的一条数据, 正常来说写法如下
select a.* from
	select cluesTaracking_id,cluesId,trackingTime,fail_why from cluestracking
	order by trackingTime desc
	group by a.cluesId
但是查询结果却是取得id最小的一条数据
不分组查询结果
分组后的查询结
                                    在进行数据分析、数据建模时,我们首先要做的就是对数据进行处理,提取我们需要的信息。下面为大家介绍一些groupby的用法,以便能够更加方便地进行数据处理。
我们往往在使用groupby进行信息提取时,往往是求分组后样本的一些统计量(max、min,var等)。如果现在我们希望取一下分组后样本的第二条记录,倒数第三条记录,这个该如何操作呢?我们可以通过first、last来提取分组后第一条和最后一...
                                    写这篇博文是为了帮助遇到同样问题的人,希望对你有用~问题:求怎么查出同一课程id时间最大记录?(如下图所示)1、刚开始想通过group by 分组课程id, 然后获取最大值,如下:SELECT MAX(l.learn_time)
FROM learn l
where l.user_id = '14201109' 
GROUP BY l.course_id查出来结果如下:但是我想要查出来所有的字...