zoukankan      html  css  js  c++  java
  • SQL查询所有用户最后一天的数据

    CREATE TABLE UserLog
    (
        UserId INT NOT NULL,
        UpdateDate DATETIME NOT NULL DEFAULT GETDATE(),
        [Action] VARCHAR(300) NOT NULL
    )
    GO
    INSERT INTO UserLog(UserId,[Action])VALUES(1,'开始')
    INSERT INTO UserLog(UserId,[Action])VALUES(1,'麦仁')
    INSERT INTO UserLog(UserId,[Action])VALUES(1,'理事')
    INSERT INTO UserLog(UserId,[Action])VALUES(1,'结束')
    INSERT INTO UserLog(UserId,[Action])VALUES(2,'开始')
    INSERT INTO UserLog(UserId,[Action])VALUES(2,'麦仁')
    INSERT INTO UserLog(UserId,[Action])VALUES(3,'理事')
    INSERT INTO UserLog(UserId,[Action])VALUES(4,'结束')
    
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(1,DATEADD(hh,-99,GETDATE()),'开始')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(1,DATEADD(hh,-98,GETDATE()),'麦仁')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(1,DATEADD(hh,-97,GETDATE()),'理事')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(1,DATEADD(hh,-96,GETDATE()),'结束')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(2,DATEADD(hh,-95,GETDATE()),'开始')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(2,DATEADD(hh,-94,GETDATE()),'麦仁')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(3,DATEADD(hh,-93,GETDATE()),'理事')
    INSERT INTO UserLog(UserId,UpdateDate,[Action])VALUES(4,DATEADD(hh,-92,GETDATE()),'结束')
    GO
    SELECT * FROM UserLog ul
    GO
    --显示数据如下:

    --第一步 根据用户分组 取日期最大值
    WITH L AS 
    (
        SELECT ul.UserId,convert(varchar(10),MAX(ul.UpdateDate),120) UpdateDate FROM UserLog ul GROUP BY ul.UserId
    )
    --第二步 左外连接 主表 匹配 用户和日期
    SELECT ul.* FROM L l LEFT JOIN UserLog ul 
    ON l.UserId = ul.UserId AND CONVERT(VARCHAR(10),ul.UpdateDate,120) = l.UpdateDate
    GO
    --显示数据如下:

    OK 想要的数据就这样查询出来了。

  • 相关阅读:
    JAVA 分布式
    Spring Boot -01- 快速入门篇(图文教程)
    MyBatis -01- 初识 MyBatis + MyBatis 环境搭建
    Vue 框架-12-Vue 项目的详细开发流程
    Vue 框架-11-介绍src文件流程及根组件app+HBuilder 配置
    Vue 框架-10-搭建脚手架 CLI
    LeetCode
    LeetCode
    LeetCode
    LeetCode
  • 原文地址:https://www.cnblogs.com/ziqixing/p/2917409.html
Copyright © 2011-2022 走看看