我需要累計數週的客戶數。有沒有好的方法來做到這一點,而不做子查詢?Oracle中的累計計數不同
我一直在尋找一些分析功能,但沒有發現任何有價值的東西。所有的工作解決方案都使用子查詢或求和計數,這對我的任務來說是錯誤的。
例如,對於這些表
WITH the_data as (
select sysdate - 28 dt, 1 val from dual union all
select sysdate - 27 dt, 13 val from dual union all
select sysdate - 20 dt, 15 val from dual union all
select sysdate - 19 dt, 1 cusval from dual union all
select sysdate - 18 dt, 2 from dual union all
select sysdate - 17 dt, 3 from dual union all
select sysdate - 16 dt, 4 from dual union all
select sysdate - 15 dt, 5 from dual union all
select sysdate - 14 dt, 6 from dual union all
select sysdate - 8 dt, 7 from dual union all
select sysdate - 6 dt, 8 from dual union all
select sysdate - 3 dt, 9 from dual union all
select sysdate - 2 dt, 9 from dual union all
select sysdate - 1 dt, 10 from dual)
我想以下
+----------------------------------+
| WEEK_NUM CUM_DISTINCT_COUNT |
+----------------------------------+
| 8 2 |
| 9 6 |
| 10 8 |
| 11 11 |
| 12 12 |
+----------------------------------+
您應該發佈您的表結構,示例數據,您嘗試過的以及期望的結果;沒有這些信息,就很難回答。 [Here](http://stackoverflow.com/help/how-to-ask)你可以閱讀如何提出一個好問題 – Aleksej
沒有任何數據,它將很難幫助你,但是解決方案可能像'COUNT( DISTINCT CUST_NUMBER)(每週劃分)' –