卢本伟NB 2019-07-08 14:59 采纳率: 0%
浏览 302
已采纳

写mysql,sql大佬看过来*-*

 id entry  quit    date
 1     2       3   2019-07-08
 2     0      3    2019-07-10
 3     3      4   2019-07-12

entry代表入职,quit代表离职
我想得到

entry  quit         date
2       3         2019-07-08
0       0         2019-07-09
0       3         2019-07-10
0       0         2019-07-11
3       4         2019-07-12

7月9号没有就写0,然后查询是根据日期区间查的

  • 写回答

2条回答 默认 最新

  • 卢本伟NB 2019-07-08 16:59
    关注

    SELECT
    date,
    MAX( sum ) AS sum
    FROM
    (
    SELECT
    @cdate := DATE_ADD( @cdate, INTERVAL - 1 DAY ) date,
    0 AS sum
    FROM
    ( SELECT @cdate := DATE_ADD( CURDATE( ), INTERVAL + 1 DAY ) FROM shopping_hibitRecord ) t1
    WHERE
    @cdate > ‘2017-08-03‘ UNION ALL
    SELECT
    DATE_FORMAT( ADDTIME, ‘%Y-%m-%d‘ ) AS date,
    COUNT( * ) AS ‘sum‘
    FROM
    shopping_hibitRecord
    WHERE
    shopping_hibitRecord.ADDTIME >= ‘2017-08-03‘
    AND deleteStatus = FALSE
    AND TYPE = 0
    GROUP BY
    DATE DESC
    ) _tmpAllTable
    GROUP BY
    date DESC
    找了一个不需要创建储存方法的方法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?