微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

确定特定客户在特定月份首次访问商店的情况

如何解决确定特定客户在特定月份首次访问商店的情况

我需要确定首次访问商店的客户每个月(和一年)(别名为Patient_ID)的计数明细。商店访问的日期时间存储在表的[MDT审核日期]列中。

客户可以在一年中多次来到商店并增加总数->但我所需要的只是客户第一次造访。

例如汤姆·邦巴迪尔(Tom Bombadil)于2019年1月访问了这家商店一次,因此计数增加到1,然后在3月又增加了4次,因此计数应该是3月的1、2月的0、1月的1,然后在10月的4次,然后在12月又2次。
我要求汤姆·邦巴迪尔(Tom Bombadil)在一个特定的月份应该被计数一次,并且只能计数一次,他的第一次出现是每月 输出应为:

rn1 YEAR    Month_Number    Month       Total_Count
1   2010    6               June        2
1   2010    7               July        1
1   2010    8               August      5
1   2010    10              October     5
1   2010    11              November    3
1   2011    1               January     4
1   2011    2               February    6
1   2011    4               April       7
1   2011    5               May         4
1   2011    6               June        10
1   2011    7               July        10
1   2011    8               August      14
1   2011    9               September   4
1   2011    10              October     8
1   2011    11              November    11
1   2011    12              December    11
1   2012    1               January     8
1   2012    2               February    21​

请参考我的查询。我尝试使用窗口功能COUNT来计算每月的商店访问量。然后ROW_NUMBER函数尝试为每次访问分配一个唯一的编号。我在做什么错了?

select 
        *
    from
        (select distinct 
             row_number() over (partition by p.Patient_ID,p.PAT_Forename1,p.PAT_Surname
                                order by PAT_Forename1,p.Patient_ID,PAT_Surname) AS rn1,datepart(year,[DATE_COLUMN]) as YEAR,datepart(month,[DATE_COLUMN]) as Month_Number,datename(month,[DATE_COLUMN]) as Month,count(p.Patient_ID) over (partition by datepart(year,[DATE_COLUMN]),[DATE_COLUMN])) as Total_Count
         from 
             Tablename m
         inner join 
            TableName p on m.PK_ID = p.PK_ID
        
         ) as temp
    where 
        rn1 = 1​

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?