怎样提高查询速度
数据库类型:ACCESS表名:kqdata
字段名有:id dwname(单位) bmname(部门) username(姓名) kqrq(日期) kqsw(上午) kqxw(下午)
需要说明一点的就是上午和下午,就是上午记录上午考勤的类别
查询显示结果:如下面的附件
查询结果.zip
(2.35 KB)
以下是上午一栏查询语句:
for i1=1 to dd'(考勤类别表中的类别个数,共17)
Set rs_ry=Server.CreateObject("ADODB.Recordset")
sq1="select * from kqdata where dwname='"&rs_admin("dwname")&"' and bmname='"&rs_admin("bmname")&"' and kqsw='"&kqlb(i1)&"' and kqrq=#"&rqdate&"#"
rs_ry.open sq1,conn,1,1
ry=rs_ry.recordcount
a=""
if rs_ry.eof then
kqxm=""
else
for i2=1 to ry
kqxm=rs_ry("username")
if ry=1 then
a=a+kqxm
elseif i2=ry then
a=a+kqxm
else
a=a+kqxm+","
end if
rs_ry.movenext
next
end if %>
<td bgcolor="#FFFFFF"><%=a%></td>
<%next%>
这种方法查询效率非常低,单位有100多个部门,1000余人。求高手给我代码优化一下,提高查询速度,还有就将上下午一并查询(每个的上下午考勤可能不同)
[ 本帖最后由 wjzm915 于 2011-3-3 13:56 编辑 ]