胃疼sh吧 关注:3贴子:163
  • 1回复贴,共1

分组查询某个字段最大值并列出所有其他字段

只看楼主收藏回复

inner join 莫名奇妙速度慢,优化之后
select * from (
select id,name,counts,createDate,row_number() over(partition by name order by createDate desc) rn
from testTable
) t where t.rn <=1
id,name,counts,createDate, 是字段


IP属地:江苏1楼2015-08-12 23:13回复
    select t.riqi,t.maxonlinenum,t.maxolinetime,a.activenum from (
    select convert(nvarchar,logtime,23)as riqi,max(在线人数)as maxonlinenum,convert(nvarchar,logtime,20)as maxolinetime, row_number() over(partition by convert(nvarchar,logtime,23) order by 在线人数 desc) rn from table where convert(nvarchar,logtime,20)>='2015-08-13' and convert(nvarchar,logtime,20)<'2015-08-13 24:00:00' and svrid = '100' and 在线人数 > 0 group by convert(nvarchar,logtime,23),在线人数,convert(nvarchar,logtime,20)) t inner join (select CONVERT(varchar(255),CONVERT(datetime,logtime),23) as riqi,count(distinct 账号)as activenum from table where logtime>='2015-08-13' and logtime<'2015-08-13 24:00:00' group by CONVERT(varchar(255),CONVERT(datetime,logtime),23))as a on t.riqi=a.riqi where t.rn <=1


    IP属地:江苏2楼2015-08-13 12:04
    回复