sql语句里如何将记录按“自然周”统计??? select to_char(sysdate, 'ww'), sum(金额) from tablegroup by to_char(sysdate, 'ww') 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 几年前写了一个function,找不到原始代码了,给你一个wrapped的,你看一下是否符合需求此函数接受一个日期参数,返回自然周。create or replace function TO_PRO$WEEK wrapped 0abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd388106000140 1a2 :e:1FUNCTION:1TO_PRO$WEEK:1RQ:1DATE:1RETURN:1VARCHAR2:1RESULT:12:1ISOWEEK:1TO_CHAR:1IW:1CURRMONTH:1MM:1TRUNC:1YYYY:1=:101:112:153:152:1ELSIF:1+:11:19:10:1||:0009f20 a0 1d 8d 8f a0 b0 3db4 :2 a0 a3 2c 6a a0 51 a51c 81 b0 a3 a0 51 a5 1c:2 a0 6e a5 b 81 b0 a3 a051 a5 1c :2 a0 6e a5 b 81b0 :3 a0 6e a5 b 6e a5 b7e 6e b4 2e a0 7e 6e b42e a0 7e 6e b4 2e a 10a0 6e d b7 :2 a0 d b7 :2 193c b7 a0 3e :2 6e 5 48 a07e 6e b4 2e a 10 a0 6ed a0 b7 a0 7e 6e b4 2ea0 7e 6e b4 2e a 10 a06e d b7 19 :2 a0 7e 51 b42e d a0 3e :2 51 48 63 a06e 7e a0 b4 2e d b7 193c b7 :2 19 3c b7 :2 19 3c :2 a065 b7 a4 a0 b1 11 68 4f17 b5 9f20 3 7 8 21 1d 1c 2919 2e 32 56 3a 3e 42 4649 4a 52 39 82 61 36 6566 6e 72 76 7b 7c 7e 60ae 8d 5d 91 92 9a 9e a2a7 a8 aa 8c b5 b9 bd c189 c6 c8 cd ce d0 d3 d8d9 de e2 e5 ea eb f0 f4f7 fc fd 1 102 107 10b 110114 116 11a 11e 122 124 128 12c12f 131 1 135 13a 13f 143 14614a 14d 152 153 1 158 15d 161166 16a 16e 170 174 177 17c 17d182 186 189 18e 18f 1 194 19919d 1a2 1a6 1a8 1ac 1b0 1b4 1b71ba 1bb 1c0 1c4 1 1c8 1cb 1ce1d1 1d4 1d8 1dd 1e0 1e4 1e5 1ea1ee 1f0 1f4 1f7 1f9 1fd 201 204206 20a 20e 211 215 219 21d 21f223 227 229 235 239 23b 244 9f20 :2 1 a 16 1c :2 16 15 2229 4 :2 1 b 14 13 :2 b :2 4c 15 14 c 1b 23 26 :2 1bc :2 4 e 17 16 e 1d 2528 :2 1d e 4 8 10 16 19:2 10 21 :2 8 26 27 :2 26 c 1314 :2 13 1d 26 27 :2 26 :3 c 16c 2c c 16 c :4 9 2c :2 b17 1c :2 b 26 2f 30 :2 2f :3 b15 b 8 35 e 15 16 :2 151f 28 29 :2 28 :2 e b 15 b2e 35 b 15 1c 1d :2 15 b:2 e 1d 23 :3 e 18 1c 1f :2 18e 25 :2 b :4 8 :5 5 c 5 :2 15 :6 1 9f20 :a 1 2 :2 1 :6 2 :c 3 :c 4 :d 6:c 8 :3 a 8 :3 d :2 b :2 8 6 :d 11:3 13 14 11 :c 14 :3 16 14 11 :7 19:6 1a :7 1c :3 1a :2 17 :2 11 :2 f :2 6 :3 21:2 5 22 :3 1 22 :2 1 2464:3 0 1 :4 0 2:a 0 9b 1 :4 05 :2 0 3 4:3 0 3 :7 0 65 :3 0 5 :3 06 :3 0 8 :2 09 8 a 09b 3 c :2 06 :3 0 8 :2 07 e 10 :6 013 11 0 997 :6 0 8 :2 010 6 :3 0 b15 17 :6 0 a:3 0 3 :3 0 b:4 0 d 19 1c1f 18 1d 999 :6 0 19 :2 017 6 :3 0 1221 23 :6 0 a:3 0 3 :3 0 d:4 0 14 25 282b 24 29 99c :6 0 a :3 0e :3 0 3 :3 0f :4 0 2d 30b :4 0 1c 2c33 10 :2 0 11:4 0 21 35 37:3 0 9 :3 0 10:2 0 11 :4 0 263a 3c :3 0 c:3 0 10 :2 0 12:4 0 2b 3f 41:3 0 3d 43 42:2 0 7 :3 0 13:4 0 45 46 048 2e 4e 7:3 0 9 :3 0 494a 0 4c 304d 0 4c 04f 44 48 04f 32 0 5035 91 9 :3 013 :4 0 14 :4 037 :3 0 51 5255 c :3 0 10:2 0 11 :4 0 3c58 5a :3 0 565c 5b :2 0 7:3 0 11 :4 0 5e5f 0 62 15:3 0 3f 8d 9:3 0 10 :2 0 11:4 0 43 64 66:3 0 c :3 0 10:2 0 12 :4 0 4869 6b :3 0 676d 6c :2 0 7:3 0 13 :4 0 6f70 0 72 4b73 6e 72 08e 7 :3 0 9:3 0 16 :2 0 17:2 0 4d 76 78:3 0 74 79 08b 7 :3 0 17:2 0 18 :2 0 7b7c 80 7d 7e0 7 :3 0 19:4 0 1a :2 0 7:3 0 50 83 85:3 0 81 86 088 53 89 7f88 0 8a 550 8b 57 8c0 8b 0 8e5d 62 0 8e5a 0 8f 5e90 0 8f 092 38 50 092 60 0 965 :3 0 7 :3 094 :2 0 96 6a9a :3 0 9a 2:3 0 66 9a 9996 97 :6 0 9b:2 0 3 c 9a9d :2 0 2 9b9e :8 0 6e4:2 0 63 1 41 7 1 f1 b 1 162 1a 1b 114 1 22 226 27 1 202 2e 2f 231 32 1 362 34 36 13b 2 39 3b1 40 2 3e40 1 47 14b 2 4e 4d1 4f 2 5354 1 59 257 59 1 601 65 2 6365 1 6a 268 6a 1 712 75 77 282 84 1 871 89 2 7a8a 3 8d 738c 1 8e 291 90 3 :2 03 12 1e 2a3 92 95 9c140 9d0114150 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 20 1 04 1 03 0 1b 1 014 1 00/ 加上条件 where to_char(sysdate, 'D') in ('2','3','4','5','6') 楼上可以满足楼主需求select sum(金额) from table where to_char(sysdate, 'D') in ('2','3','4','5','6') bobo兄,好象你没有按自然周分组啊,是不符合楼主要求的。 如果只有自然周产生业务,则Michaelyfj(星星还是那颗星星)的就可以。 楼主是按一年有53周作分组,就用以下方法吧select to_char(日期,'ww'),sum(金额) from table where to_char(日期, 'D') in ('2','3','4','5','6') group by to_char(日期,'ww') 不过最好是这样:>select to_char(date, 'yyyyww'), sum(金额) from tablegroup by to_char(date, 'yyyyww');这样可以区分不同年份的周. oracle 透明网关安装完报错 oracle9i创建实例问题 按惯例,散分200! 求developer R6i 的资料 SQL翻譯成Oracle 请问oracle服务,实例,数据库,全局数据库,sid,外部过程,extproc 的区别和联系 linux下oracle 10g的客户端连接问题 關於兩個表連接求救哦..............在線等待............. 如何在sqlplus中插入多字段的纪录,详细请看内容 请问那有比较好的,关于ORACEL的资料的网址 ! ORACLE下,怎么捕捉当前正在运行的SQL语句? 预编译后的c文件link时出错,求救!
此函数接受一个日期参数,返回自然周。create or replace function TO_PRO$WEEK wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
8
8106000
1
4
0
1a
2 :e:
1FUNCTION:
1TO_PRO$WEEK:
1RQ:
1DATE:
1RETURN:
1VARCHAR2:
1RESULT:
12:
1ISOWEEK:
1TO_CHAR:
1IW:
1CURRMONTH:
1MM:
1TRUNC:
1YYYY:
1=:
101:
112:
153:
152:
1ELSIF:
1+:
11:
19:
10:
1||:
00
0
9f
2
0 a0 1d 8d 8f a0 b0 3d
b4 :2 a0 a3 2c 6a a0 51 a5
1c 81 b0 a3 a0 51 a5 1c
:2 a0 6e a5 b 81 b0 a3 a0
51 a5 1c :2 a0 6e a5 b 81
b0 :3 a0 6e a5 b 6e a5 b
7e 6e b4 2e a0 7e 6e b4
2e a0 7e 6e b4 2e a 10
a0 6e d b7 :2 a0 d b7 :2 19
3c b7 a0 3e :2 6e 5 48 a0
7e 6e b4 2e a 10 a0 6e
d a0 b7 a0 7e 6e b4 2e
a0 7e 6e b4 2e a 10 a0
6e d b7 19 :2 a0 7e 51 b4
2e d a0 3e :2 51 48 63 a0
6e 7e a0 b4 2e d b7 19
3c b7 :2 19 3c b7 :2 19 3c :2 a0
65 b7 a4 a0 b1 11 68 4f
17 b5
9f
2
0 3 7 8 21 1d 1c 29
19 2e 32 56 3a 3e 42 46
49 4a 52 39 82 61 36 65
66 6e 72 76 7b 7c 7e 60
ae 8d 5d 91 92 9a 9e a2
a7 a8 aa 8c b5 b9 bd c1
89 c6 c8 cd ce d0 d3 d8
d9 de e2 e5 ea eb f0 f4
f7 fc fd 1 102 107 10b 110
114 116 11a 11e 122 124 128 12c
12f 131 1 135 13a 13f 143 146
14a 14d 152 153 1 158 15d 161
166 16a 16e 170 174 177 17c 17d
182 186 189 18e 18f 1 194 199
19d 1a2 1a6 1a8 1ac 1b0 1b4 1b7
1ba 1bb 1c0 1c4 1 1c8 1cb 1ce
1d1 1d4 1d8 1dd 1e0 1e4 1e5 1ea
1ee 1f0 1f4 1f7 1f9 1fd 201 204
206 20a 20e 211 215 219 21d 21f
223 227 229 235 239 23b 244
9f
2
0 :2 1 a 16 1c :2 16 15 22
29 4 :2 1 b 14 13 :2 b :2 4
c 15 14 c 1b 23 26 :2 1b
c :2 4 e 17 16 e 1d 25
28 :2 1d e 4 8 10 16 19
:2 10 21 :2 8 26 27 :2 26 c 13
14 :2 13 1d 26 27 :2 26 :3 c 16
c 2c c 16 c :4 9 2c :2 b
17 1c :2 b 26 2f 30 :2 2f :3 b
15 b 8 35 e 15 16 :2 15
1f 28 29 :2 28 :2 e b 15 b
2e 35 b 15 1c 1d :2 15 b
:2 e 1d 23 :3 e 18 1c 1f :2 18
e 25 :2 b :4 8 :5 5 c 5 :2 1
5 :6 1
9f
2
0 :a 1 2 :2 1 :6 2 :c 3 :c 4 :d 6
:c 8 :3 a 8 :3 d :2 b :2 8 6 :d 11
:3 13 14 11 :c 14 :3 16 14 11 :7 19
:6 1a :7 1c :3 1a :2 17 :2 11 :2 f :2 6 :3 21
:2 5 22 :3 1 22 :2 1
246
4
:3 0 1 :4 0 2
:a 0 9b 1 :4 0
5 :2 0 3 4
:3 0 3 :7 0 6
5 :3 0 5 :3 0
6 :3 0 8 :2 0
9 8 a 0
9b 3 c :2 0
6 :3 0 8 :2 0
7 e 10 :6 0
13 11 0 99
7 :6 0 8 :2 0
10 6 :3 0 b
15 17 :6 0 a
:3 0 3 :3 0 b
:4 0 d 19 1c
1f 18 1d 99
9 :6 0 19 :2 0
17 6 :3 0 12
21 23 :6 0 a
:3 0 3 :3 0 d
:4 0 14 25 28
2b 24 29 99
c :6 0 a :3 0
e :3 0 3 :3 0
f :4 0 2d 30
b :4 0 1c 2c
33 10 :2 0 11
:4 0 21 35 37
:3 0 9 :3 0 10
:2 0 11 :4 0 26
3a 3c :3 0 c
:3 0 10 :2 0 12
:4 0 2b 3f 41
:3 0 3d 43 42
:2 0 7 :3 0 13
:4 0 45 46 0
48 2e 4e 7
:3 0 9 :3 0 49
4a 0 4c 30
4d 0 4c 0
4f 44 48 0
4f 32 0 50
35 91 9 :3 0
13 :4 0 14 :4 0
37 :3 0 51 52
55 c :3 0 10
:2 0 11 :4 0 3c
58 5a :3 0 56
5c 5b :2 0 7
:3 0 11 :4 0 5e
5f 0 62 15
:3 0 3f 8d 9
:3 0 10 :2 0 11
:4 0 43 64 66
:3 0 c :3 0 10
:2 0 12 :4 0 48
69 6b :3 0 67
6d 6c :2 0 7
:3 0 13 :4 0 6f
70 0 72 4b
73 6e 72 0
8e 7 :3 0 9
:3 0 16 :2 0 17
:2 0 4d 76 78
:3 0 74 79 0
8b 7 :3 0 17
:2 0 18 :2 0 7b
7c 80 7d 7e
0 7 :3 0 19
:4 0 1a :2 0 7
:3 0 50 83 85
:3 0 81 86 0
88 53 89 7f
88 0 8a 55
0 8b 57 8c
0 8b 0 8e
5d 62 0 8e
5a 0 8f 5e
90 0 8f 0
92 38 50 0
92 60 0 96
5 :3 0 7 :3 0
94 :2 0 96 6a
9a :3 0 9a 2
:3 0 66 9a 99
96 97 :6 0 9b
:2 0 3 c 9a
9d :2 0 2 9b
9e :8 0
6e
4
:2 0 63 1 4
1 7 1 f
1 b 1 16
2 1a 1b 1
14 1 22 2
26 27 1 20
2 2e 2f 2
31 32 1 36
2 34 36 1
3b 2 39 3b
1 40 2 3e
40 1 47 1
4b 2 4e 4d
1 4f 2 53
54 1 59 2
57 59 1 60
1 65 2 63
65 1 6a 2
68 6a 1 71
2 75 77 2
82 84 1 87
1 89 2 7a
8a 3 8d 73
8c 1 8e 2
91 90 3 :2 0
3 12 1e 2a
3 92 95 9c1
4
0
9d
0
1
14
1
5
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
20 1 0
4 1 0
3 0 1
b 1 0
14 1 0
0/
select sum(金额) from table where to_char(sysdate, 'D') in ('2','3','4','5','6')
select to_char(日期,'ww'),sum(金额) from table where to_char(日期, 'D') in ('2','3','4','5','6') group by to_char(日期,'ww')
>select to_char(date, 'yyyyww'), sum(金额) from table
group by to_char(date, 'yyyyww');这样可以区分不同年份的周.