求教同比、环比问题

g9ma01 2011-01-14 08:11:52
asp+sql server 2000,表名dealerfazhan字段rq(日期,char)、dealer_id(销售商,varchar)、fzs(销量,int),用户在页面输入起始、终止日期后,统计结果如下:dealer_id 当期销售数 上期销售数 去年同期销售数,有可能存在的问题:一个销售商当期有销售量而上期或者去年同期没有销售量。
...全文
169 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
set rs=...
sql="select sum(fzs),dealer_id from dealerfazhan where DateDiff(d,rq,用户输入的起始时间)>=0 and DateDiff(d,rq,用户输入的截止时间)<=0 group by dealer_id"
rs.open sql,conn, 1,1

do while not rs.bof
set rs1=...
sql1="select sum(fzs) from dealerfazhan where DateDiff(m,rq,用户输入的起始时间)=1 and dealer_id="& rs("dealer_id")'求上一个月,即环比
rs1.open sql1,conn, 1,1
set rs2=...
sql2="select sum(fzs) from dealerfazhan where DateDiff(y,rq,用户输入的起始时间)=1 and dealer_id="& rs("dealer_id")'求上一个月,即同比
rs2.open sql2,conn, 1,1


loop

大概这样,剩下的自己补齐
g9ma01 2011-01-16
  • 打赏
  • 举报
回复
都不是我想要的
001007009 2011-01-14
  • 打赏
  • 举报
回复
该怎么处理 ,就这么处理啊

if rs.eof then
错误处理
else
....
end if
g9ma01 2011-01-14
  • 打赏
  • 举报
回复
如果上期、同期的数据为空怎么处理
001007009 2011-01-14
  • 打赏
  • 举报
回复
比如被作比较的是2010年12月,那么同比是2009年12月,环比是2010年11月
ycproc 2011-01-14
  • 打赏
  • 举报
回复
同比、环比 解释下
十一文 2011-01-14
  • 打赏
  • 举报
回复
select dealer_id,
当期销售数=select count(*) from dealerfazhan where rq> 起始日期 And 终止日期<rq and dealer_id = a.id
上期销售数=select count(*) from dealerfazhan where (上期的时间条件) and dealer_id = a.id
去年同期销售数=select count(*) from dealerfazhan where (去年同期的时间条件) and dealer_id = a.id

from
dealerfazhan as a
group
by dealer_id
001007009 2011-01-14
  • 打赏
  • 举报
回复
楼主试试:
环比:
select count(*) from dealerfazhan where DateDiff(d,rq,getdate())<=60 and DateDiff(d,rq,getdate())>=30
g9ma01 2011-01-14
  • 打赏
  • 举报
回复
怎么实现该查询统计
十一文 2011-01-14
  • 打赏
  • 举报
回复
楼主到底要wen什么?

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧