最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

我如何使用sql查询以天格式获取中位数,以下是我的表数据

IT培训 admin 5浏览 0评论

我如何使用sql查询以天格式获取中位数,以下是我的表数据

    mobile        date
 - 9833099876   -2019-01-23
 - 9833099876   -2019-02-02
 - 9833099876   -2019-02-02
 - 9833099876   -2019-03-16
 - 9833099876   -2019-05-20

并且所需的输出应该是这样的:

9833099876  32 -->this is only for example , not the  answer
回答如下:

与cte(con_mob,billsDate)如(选择DISTINCT contact_mobile,bills_date从销售数据哪里contact_mobile不为空AND bills_date不为空)

选择con_mob,meadian_value =案件什么时候count(billsDate)%2 = 0然后DATEDIFF(DAY,CONVERT(date,MIN(billsDate)),CONVERT(日期,MAX(billsDate)))其他DATEDIFF(DAY,CONVERT(date,MIN(billsDate)),CONVERT(日期,MAX(billsDate)))/ 2结束来自(选择con_mob,billsDate,DENSE_RANK()OVER(分区依据con_mob ORDER BY billsDate)AS Rownum,COUNT(billsDate)OVER(按con_mob划分)AS vstcnt从中心) 一种哪里vstcnt%2 = 0 AND Rownum in(vstcnt / 2,vstcnt / 2 +1)要么vstcnt%2 <> 0 AND Rownum in(vstcnt / 2,vstcnt / 2 + 2)通过...分组con_mob拥有COUNT(billsDate)> 1

我如何使用sql查询以天格式获取中位数,以下是我的表数据

    mobile        date
 - 9833099876   -2019-01-23
 - 9833099876   -2019-02-02
 - 9833099876   -2019-02-02
 - 9833099876   -2019-03-16
 - 9833099876   -2019-05-20

并且所需的输出应该是这样的:

9833099876  32 -->this is only for example , not the  answer
回答如下:

与cte(con_mob,billsDate)如(选择DISTINCT contact_mobile,bills_date从销售数据哪里contact_mobile不为空AND bills_date不为空)

选择con_mob,meadian_value =案件什么时候count(billsDate)%2 = 0然后DATEDIFF(DAY,CONVERT(date,MIN(billsDate)),CONVERT(日期,MAX(billsDate)))其他DATEDIFF(DAY,CONVERT(date,MIN(billsDate)),CONVERT(日期,MAX(billsDate)))/ 2结束来自(选择con_mob,billsDate,DENSE_RANK()OVER(分区依据con_mob ORDER BY billsDate)AS Rownum,COUNT(billsDate)OVER(按con_mob划分)AS vstcnt从中心) 一种哪里vstcnt%2 = 0 AND Rownum in(vstcnt / 2,vstcnt / 2 +1)要么vstcnt%2 <> 0 AND Rownum in(vstcnt / 2,vstcnt / 2 + 2)通过...分组con_mob拥有COUNT(billsDate)> 1

发布评论

评论列表 (0)

  1. 暂无评论