首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

请问个统计的小疑点,多谢各位

2012-11-14 
请教个统计的小问题,谢谢各位。ASP+ACCESS2000作业表序号 作业生成时间 生产部门作业结束时间 完成部门完成

请教个统计的小问题,谢谢各位。
ASP+ACCESS2000
作业表
序号 作业生成时间 生产部门 作业结束时间 完成部门 完成时间
1 2012-09-09 车间1|车间2 2012-10-09 车间1|车间2 2012-10-08
2 2012-09-09 车间2|车间3 2012-10-09 车间2 2012-10-08
3 2012-09-09 车间1 2012-10-09 车间1 2012-10-08
4 2012-09-09 车间2 2012-10-09 车间2 2012-10-08
。。。
要求按完成时间内(如10月)统计各部门完成的工单数量,统计结果如下:
生产部门 作业完成数 作业未完成数量 作业合计
车间1 2 2
车间2 3 3
车间3 1 1
合计 5 1 6

谢谢各位高手。

[解决办法]
#4楼我已经说过了,按照那样设计就方便多了,直接3个sql语句统计,不需要遍历

下面是遍历的

VBScript code
set rs=server.CreateObject("adodb.recordset")set dit=Server.CreateObject ("Scripting.Dictionary")rs.Open "select * from [工作表]",conn,1,1while not rs.EOF  dept=rs("生产部门")  arrdept=split(dept,"|")  fdept="|"&rs("完成部门")&"|"  for i=0 to ubound(arrdept)    if isempty(dit(arrdept(i))) then      arr=array(0,0,0)'键值为数组,第一项完成的,第二项未完成,第三项作业数    else      arr=dit(arrdept(i))    end if    arr(2)=arr(2)+1'作业数+1    if instr(fdept,"|"&arrdept(i)&"|")=0 then'未包含在完成部门      arr(1)=arr(1)+1    else      arr(0)=arr(0)+1    end if    dit(arrdept(i))=arr  next  rs.MoveNextwendrs.Close:set rs=nothing:conn.Close:set conn=nothingkeys=dit.Keysresponse.Write "<table><tr><td>部门</td><td>作业完成数</td><td>作业未完成数量</td><td>作业合计</td></tr>"for i=0 to ubound(keys)arr=dit(keys(i))response.Write "<tr><td>"&keys(i)&"</td><td>"&arr(0)&"</td><td>"&arr(1)&"</td><td>"&arr(2)&"</td></tr>"nextresponse.Write "</table>" 

热点排行