>>>>>精通SQL语言的请看:
有一个表,有三个字段: 日期 帐号 余额
能否用SQL语句查找出任一个日期段的任一个帐号的余额变化(简单说:就是类似于
本月5号比上月10号,每个帐号的余额增长数)
该表存有20万条记录,如何才能快速计算速度?
问题点数:50、回复次数:6Top
1 楼BrentIvan(Ivan)回复于 2001-06-30 21:16:02 得分 20
比如想查所有帐号在2000-01-01和2001-01-01之间的增长:
Select Distinct 帐号,
(Select 余额 From 表名 Where 日期 = '2001-01-01' And 帐号 = 表名别名.帐号) -
(Select 余额 From 表名 Where 日期 = '2000-01-01' And 帐号 = 表名别名.帐号)
From 表名 表名别名Top
2 楼cxmcxm(小陈)回复于 2001-07-01 01:20:01 得分 30
如同一帐号同一时间只有一个记录,可用下列方法
select A.帐号,A.余额-B.余额 AS 余额增长数 FROM (SELECT 帐号,余额 FROM 表名 WHERE 日期='2000-6-5') A,(SELECT 帐号,余额 FROM 表名 WHERE 日期='2000-5-10') B
WHERE A.帐号=B.帐号
对帐号与日期创建索引,可加快速度Top
3 楼Higher()回复于 2001-07-01 07:13:19 得分 0
十分感谢上面两位,我很想给你们分数,可我找不到给分的地方!Top
4 楼ipman(.NET)回复于 2001-07-01 08:41:27 得分 0
我告诉你,在管理里面,分数也给我一点吧!Top
5 楼BrentIvan(Ivan)回复于 2001-07-01 09:01:41 得分 0
帖子列表旁边有个管理,或者回帖后有地方输分数和密码Top
6 楼ldy(罗大佑)回复于 2001-07-01 11:14:14 得分 0
hehe
我也要Top




