判断日期连续

rongguo52013 2011-09-20 01:14:47
数据库中有这样的一种数据,在网页中添加数据,添加某人的姓名和日期,添加一次算一次旷工,如果连续旷工三天以上就在网页上用颜色标记,不是连续的就不用。如2011-9-19,2011-9-20,2011-9-21这样连续的,要怎么判断?
...全文
133 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
黑心 2011-09-20
  • 打赏
  • 举报
回复
response.Write "<table border=1>"
sql="select * from utable order by username,date "
set rs=server.CreateObject("adodb.recordset")
rs.open sql,conn,1,3

do while not rs.eof
response.Write "<tr>"
response.Write "<td>"&rs("ID")&"</td><td>"&rs("username")&"</td><td bgcolor='"&sub_utable(rs("username"),rs("date"))&"'>"&rs("date")&"</td>"
response.Write "</tr>"
rs.movenext
loop

response.Write "</table>"
function sub_utable(us,da)
flag=0
sub_utable=""
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=2 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=1 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=-1 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=-2 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
end function

28,409

社区成员

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

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