有TEST表一张
SQL> desc test;
NameType Nullable Default Comments
------- ------------ -------- ------- --------
CODENUMBER(16,2) Y
WORKDAY DATE Y
SQL> select * from test;
CODE WORKDAY
------------------ -----------
23.10 2006-1-1
23.10 2006-1-2
23.10 2006-2-1
23.10 2006-3-1
23.10 2006-3-1
23.10 2006-4-1
23.10 2006-4-1
7 rows selected
我想要的结果是
WORKDAY
CODE TOTAL_CODE
------------------------ ------------------ ------------------------------
200601
23.10
23.1
200601
23.10
46.2
200602
23.10
23.1
200603
23.10
23.1
200603
23.10
46.2
200604
23.10
23.1
200604
23.10
46.2
SQL我是这样写的:
SELECTsubstr(to_char(workday,'yyyymmdd'),1,6) workday,
code,
SUM (code) over(PARTITION BY substr(to_char(workday,'yyyymmdd'),1,6) ORDER BY code)total_code
FROMTEST ;
但得出的结果却是:
WORKDAY
CODE TOTAL_CODE
------------------------ ------------------ ------------------------------
200601
23.10
46.2
200601
23.10
46.2
200602
23.10
23.1
200603
23.10
46.2
200603
23.10
46.2
200604
23.10
46.2
200604
23.10
46.2
请高手指教一下怎么回事?
|