分享SQL,查询用户最近一次购买时间间隔 (2)

查询结果:

分享SQL,查询用户最近一次购买时间间隔

------------------------------------------------------------------------------------------------------------------

(3.4)因为我们要求每个用户最近一次与上一次购买的时间间隔,所以,我们要基于上图对用户分组,去购买日期间隔最小值:

      SELECT

          用户,MIN(购买日期间隔) '距离上一次购买天数'

      FROM

        (

        SELECT

            购买时间,用户,购买时间1,用户1,DATEDIFF(购买时间,购买时间1) as '购买日期间隔'

        FROM

          (SELECT

            用户购买订单.购买时间,用户购买订单.用户,a.购买时间 '购买时间1',a.用户 '用户1'

          FROM

            用户购买订单

          INNER JOIN

            (SELECT * from 用户购买订单)a

          ON

            用户购买订单.`用户` = a.`用户` AND 用户购买订单.购买时间 <> a.购买时间

            )b

        WHERE

          DATEDIFF(购买时间,购买时间1)>=0

      )c

      GROUP BY

           用户

查询结果:

分享SQL,查询用户最近一次购买时间间隔

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpdxwd.html