有这样一个(用户消费信息)表create table bank(
int id,//编号
int uid,//用户ID
int money,//银行卡余额
int shopping, //在某超市累计消费金额
date ddate//记录时间
);
其中男人(uid=1,3,5),女人(uid=2,4)
数据如下:
id uid money shopping ddate
1 1 1000 500 2011-01-01 02:11:22
2 2 1200 100 2011-01-01 02:11:25
3 3 1000 200 2011-01-01 02:11:26
4 1 2000 1000 2011-01-02 05:11:28
5 2 3100 100 2011-01-02 05:11:22
6 3 2000 210 2011-01-02 05:11:32
7 4 1020 100 2011-01-02 15:11:22
8 1 5000 1100 2011-01-03 05:10:22
9 3 6000 230 2011-01-03 05:20:22
10 1 8000 2110 2011-01-04 06:12:22
11 2 3200 200 2011-01-04 08:15:22
12 3 6100 330 2011-01-04 05:18:22
13 4 2100 150 2011-01-04 05:10:22
14 1 8822 2200 2011-01-05 05:10:22
15 2 3322 340 2011-01-05 09:10:22
16 4 2322 340 2011-01-05 02:10:22
17 2 3500 350 2011-01-06 03:10:22
18 3 7500 350 2011-01-06 06:10:22
19 4 2300 650 2011-01-06 09:10:22
20 5 2100 200 2011-01-06 01:10:22
21 2 3600 360 2011-01-07 03:10:22
22 3 7800 370 2011-01-07 06:10:22
23 4 2800 280 2011-01-07 09:10:22
24 5 2900 220 2011-01-07 01:10:22
25 2 3800 380 2011-01-08 03:10:22
26 3 7900 390 2011-01-08 06:10:22
27 4 2000 290 2011-01-08 09:10:22
28 5 3200 230 2011-01-08 01:10:22
现在需要统计:
男人,女人分别从2号到6号,有多少消费者,银行卡增加多少钱,在超市消费总金额是多少?
希望能用一条SQL解决这个问题
个人感觉这是男人的正确答案:(通过差值来求和)
消费者有5个(3男2女)
男人:2100+200+1500+300+3822 200+550+140+250+100
int id,//编号
int uid,//用户ID
int money,//银行卡余额
int shopping, //在某超市累计消费金额
date ddate//记录时间
);
其中男人(uid=1,3,5),女人(uid=2,4)
数据如下:
id uid money shopping ddate
1 1 1000 500 2011-01-01 02:11:22
2 2 1200 100 2011-01-01 02:11:25
3 3 1000 200 2011-01-01 02:11:26
4 1 2000 1000 2011-01-02 05:11:28
5 2 3100 100 2011-01-02 05:11:22
6 3 2000 210 2011-01-02 05:11:32
7 4 1020 100 2011-01-02 15:11:22
8 1 5000 1100 2011-01-03 05:10:22
9 3 6000 230 2011-01-03 05:20:22
10 1 8000 2110 2011-01-04 06:12:22
11 2 3200 200 2011-01-04 08:15:22
12 3 6100 330 2011-01-04 05:18:22
13 4 2100 150 2011-01-04 05:10:22
14 1 8822 2200 2011-01-05 05:10:22
15 2 3322 340 2011-01-05 09:10:22
16 4 2322 340 2011-01-05 02:10:22
17 2 3500 350 2011-01-06 03:10:22
18 3 7500 350 2011-01-06 06:10:22
19 4 2300 650 2011-01-06 09:10:22
20 5 2100 200 2011-01-06 01:10:22
21 2 3600 360 2011-01-07 03:10:22
22 3 7800 370 2011-01-07 06:10:22
23 4 2800 280 2011-01-07 09:10:22
24 5 2900 220 2011-01-07 01:10:22
25 2 3800 380 2011-01-08 03:10:22
26 3 7900 390 2011-01-08 06:10:22
27 4 2000 290 2011-01-08 09:10:22
28 5 3200 230 2011-01-08 01:10:22
现在需要统计:
男人,女人分别从2号到6号,有多少消费者,银行卡增加多少钱,在超市消费总金额是多少?
希望能用一条SQL解决这个问题
个人感觉这是男人的正确答案:(通过差值来求和)
消费者有5个(3男2女)
男人:2100+200+1500+300+3822 200+550+140+250+100
from bank
group by uid%2
int id,//编号
int uid,//用户ID
int money,//银行卡余额
int shopping, //在某超市累计消费金额
date ddate//记录时间
);
注意是累计消费金额,而不是每次消费金额,不是简单求和,而是通过差值求和
from bank
group by uid%2
from bank
group by if(uid in (1,2),'M','F')
不会再有什么新条件了吧。