sql语句——根据学生分组并获取学生最新一条时间的记录信息

需求

  根据学生ID分组获取学生时间最新的一条记录的全部信息

数据库表

[id] int NOT NULL IDENTITY(1,1) ,
[stuId] nvarchar(100) COLLATE Chinese_PRC_CI_AS NULL ,
[actionTime] datetime NULL 

  

sql语句(Mybatis)

select *
        from(
            select
                id,  stuId, actionTime,
                actionType,ROW_NUMBER() over(partition by stuId order by actionTime desc) as rn from notice_log
            where
                stuId in
                <foreach collection="stuIdList" item="stuId" open="(" separator="," close=")">
                    #{stuId}
                </foreach>
        )a where a.rn <![CDATA[<= ]]> 1

  

查询结果:

  查询时间有点久

posted @ 2022-04-26 10:18  假装空白  阅读(1035)  评论(0)    收藏  举报