CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

关于时间选择查询的问题(付代码,高分)希望高手帮忙!在线给分!

楼主leeleko(光头仔_lee)2006-03-15 10:41:17 在 Web 开发 / ASP 提问

下面的是下拉菜单的代码!  
  <SELECT   id=select  
                                                  style="FONT-SIZE:   12px;   WIDTH:   130px;   FONT-FAMILY:   宋体"  
                                                  name="STM"   width="10">  
                                          <OPTION  
                                                      selected>--请选择所有时间--</OPTION>  
                                          <OPTION  
                                                      value="1">1天内</OPTION>  
                                          <OPTION   value="3">3天内</OPTION>  
                                          <OPTION   value="7">一周内</OPTION>  
                                          <OPTION    
                                                      value="15">半月内</OPTION>  
                                          <OPTION   value="30">一个月内</OPTION>  
                                          <OPTION   value="60">二个月内</OPTION>  
                                          <OPTION  
                                                      value="90">三个月内</OPTION>  
                                          <OPTION   value="183">半年内</OPTION>  
                                          <OPTION   value="366">一年内</OPTION>  
                                      </SELECT>  
  -------------------------------------------------  
  在上面的代码中,要求的查询就比如是:获取当前日期,譬如查询从当前日期起1周内,还有就是,上面的代码中,一周内和前面value="7"的值怎么传给SQL语句啊?   ACCESS的数据库查询语句怎么写啊?希望高手指点!毕业设计来的!55555555555555555  
  问题点数:100、回复次数:16Top

1 楼theodiact(theodiact)回复于 2006-03-15 10:52:31 得分 0

可从this.stm.item集合中取到,access可以使用SQL语句Top

2 楼ghostzp(不做举人,如何榜眼探花)回复于 2006-03-15 10:53:59 得分 0

1.获取当前日期,譬如查询从当前日期起1周内,  
  获取当前日期:date   ;查询从当前日期起1周内:dateadd("d",date,7)  
  2.一周内和前面value="7"的值怎么传给SQL语句啊?  
  你提交就可以得到value=7了,一周内这个字串无法得到,要自己判断  
  3.   ACCESS的数据库查询语句怎么写啊?  
  要看你的要求怎么写Top

3 楼sxsgssgs(.net新手)回复于 2006-03-15 11:17:09 得分 20

这是查询从现在开始到过去一天内的数据,查过去两天内的只需要再*2  
  select   *   from   datetb   where   datediff("s",rq,now())<24*60*60Top

4 楼sxsgssgs(.net新手)回复于 2006-03-15 11:18:45 得分 0

select   *   from   datetb   where   datediff("s",rq,now())<24*60*60  
  datetb是表名  
  rq是日期字段名  
  now()是现在的日期与时间  
   
  24*60*60是一天的秒数。Top

5 楼sxsgssgs(.net新手)回复于 2006-03-15 11:21:37 得分 0

严格来说,  
   
  select   *   from   datetb   where   datediff("s",rq,now())<=24*60*60  
   
  还应该有=号,这表示刚好是24小时。Top

6 楼lovexpshl(白浪)回复于 2006-03-15 11:28:51 得分 60

在asp处理页面中:  
   
  Dim   intDays  
   
  intDays   =   CInt(Request("STM"))                   ‘获取提前的天数  
   
  SQL   语句为:  
  "SELECT   *   FROM   [表名]   WHERE   DateDiff(d,   [日期字段名],   "   &now()&   ")>"   &   intDays  
  Top

7 楼cestar2005(往事随风)回复于 2006-03-15 12:01:40 得分 0

楼上的写的挺全,用DateDiff处理最好Top

8 楼leeleko(光头仔_lee)回复于 2006-03-15 12:14:58 得分 0

在这里谢过大家了,我调试下!Top

9 楼iuhxq(小灰)回复于 2006-03-15 12:35:07 得分 10

<SELECT   id=select  
                                                  style="FONT-SIZE:   12px;   WIDTH:   130px;   FONT-FAMILY:   宋体"  
                                                  name="STM"   width="10">  
                                          <OPTION  
                                                      selected>--请选择所有时间--</OPTION>  
                                          <OPTION  
                                                      value="1">1天内</OPTION>  
                                          <OPTION   value="2">3天内</OPTION>  
                                          <OPTION   value="3">一周内</OPTION>  
                                          <OPTION    
                                                      value="4">半月内</OPTION>  
                                          <OPTION   value="5">一个月内</OPTION>  
                                          <OPTION   value="6">二个月内</OPTION>  
                                          <OPTION  
                                                      value="7">三个月内</OPTION>  
                                          <OPTION   value="8">半年内</OPTION>  
                                          <OPTION   value="9">一年内</OPTION>  
                                      </SELECT>  
   
  然后转换成时间长度  
  用DateAdd最好,因为DateDiff返回的不准确,例如2006-1-1   23:00:00和2006-1-2   1:0:0相差2个小时,可是结果是1天。所以用DateAdd最好,要不你用DateDiff取得秒数也行Top

10 楼znjgress(四空和尚)回复于 2006-03-15 13:13:19 得分 10

描述  
  返回两个日期之间的时间间隔。    
  语法  
  DateDiff(interval,   date1,   date2   [,firstdayofweek[,   firstweekofyear]])  
  DateDiff   函数的语法有以下参数:  
   
  参数   描述    
  interval   必选。String   expression   表示用于计算   date1   和   date2   之间的时间间隔。有关数值,请参阅“设置”部分。    
  date1,   date2   必选。日期表达式。用于计算的两个日期。    
  firstdayofweek   可选。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。    
  firstweekofyear   可选。指定一年中第一周的常数。如果没有指定,则默认为   1   月   1   日所在的星期。有关数值,请参阅“设置”部分。    
   
   
   
  设置  
  interval   参数可以有以下值:  
  设置   描述    
  yyyy   年    
  q   季度    
  n   月    
  y   一年的日数    
  d   日    
  w   一周的日数    
  ww   周    
  h   小时    
  m   分钟    
  s   秒    
   
   
  firstdayofweek   参数可以有以下值:  
   
  常数   值   描述    
  vbUseSystem   0   使用区域语言支持   (NLS)   API   设置。    
  vbSunday   1   星期日(默认)    
  vbMonday   2   星期一    
  vbTuesday   3   星期二    
  vbWednesday   4   星期三    
  vbThursday   5   星期四    
  vbFriday   6   星期五    
  vbSaturday   7   星期六    
   
   
  firstweekofyear   参数可以有以下值:  
   
  常数   值   描述    
  vbUseSystem   0   使用区域语言支持   (NLS)   API   设置。    
  vbFirstJan1   1   由   1   月   1   日所在的星期开始(默认)。    
  vbFirstFourDays   2   由在新年中至少有四天的第一周开始。    
  vbFirstFullWeek   3   由在新的一年中第一个完整的周开始。    
   
   
  说明  
  DateDiff   函数用于判断在两个日期之间存在的指定时间间隔的数目。例如可以使用   DateDiff   计算两个日期相差的天数,或者当天到当年最后一天之间的星期数。  
  要计算   date1   和   date2   相差的天数,可以使用“一年的日数”(“y”)或“日”(“d”)。当   interval   为“一周的日数”(“w”)时,DateDiff   返回两个日期之间的星期数。如果   date1   是星期一,则   DateDiff   计算到   date2   之前星期一的数目。此结果包含   date2   而不包含   date1。如果   interval   是“周”(“ww”),则   DateDiff   函数返回日历表中两个日期之间的星期数。函数计算   date1   和   date2   之间星期日的数目。如果   date2   是星期日,DateDiff   将计算   date2,但即使   date1   是星期日,也不会计算   date1。  
   
  如果   date1   晚于   date2,则   DateDiff   函数返回负数。  
   
  firstdayofweek   参数会对使用“w”和“ww”间隔符号的计算产生影响。  
   
  如果   date1   或   date2   是日期文字,则指定的年度会成为日期的固定部分。但是如果   date1   或   date2   被包括在引号   ("   ")   中并且省略年份,则在代码中每次计算   date1   或   date2   表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。  
   
  在   interval   为“年”(“yyyy”)时,比较   12   月   31   日和来年的   1   月   1   日,虽然实际上只相差一天,DateDiff   返回   1   表示相差一个年份。  
   
  下面的示例利用   DateDiff   函数显示今天与给定日期之间间隔天数:    
   
  Function   DiffADate(theDate)  
      DiffADate   =   "从当天开始的天数:"   &   DateDiff("d",   Now,   theDate)  
  End   Function  
   
  Top

11 楼leeleko(光头仔_lee)回复于 2006-03-16 10:27:29 得分 0

我用了上面的调试,出现下面的错误。。晕死了。。弄了我2天时间了。  
  [Microsoft][ODBC   Microsoft   Access   Driver]   语法错误   (操作符丢失)   在查询表达式   'and   DateDiff(d,   [begintime],   2006-3-16   10:27:14)>3'   中。  
   
  代码:  
  sql="select   *   from   corperation   where   "  
  if   addone_id<>""   then  
  sql=sql&"   province   like'%"&addone_id&"%'"  
  end   if  
   
  if   intDays<>""   then  
  sql_time="   and   "+"   DateDiff(d,   [begintime],   "&now()&")>"   &intDays  
  sql=sql+sql_time  
  end   ifTop

12 楼sxsgssgs(.net新手)回复于 2006-03-16 10:54:56 得分 0

晕死人,你就用的那个写法,是最准确的。  
   
  你怎么还用他们的?他们的那个算法不太准确。Top

13 楼leeleko(光头仔_lee)回复于 2006-03-16 11:05:32 得分 0

我也用了你的去调试,现在出现的错误是:  
  Microsoft   OLE   DB   Provider   for   ODBC   Drivers   错误   '80040e14'    
   
  [Microsoft][ODBC   Microsoft   Access   Driver]   WHERE   子句语法错误。    
   
  /kjpt/job/listme.asp,行112    
   
  好郁闷啊!Top

14 楼leeleko(光头仔_lee)回复于 2006-03-16 11:47:13 得分 0

请大家帮忙解决一下。麻烦了。。Top

15 楼leeleko(光头仔_lee)回复于 2006-03-17 22:31:21 得分 0

这个我已经解决了。不过用的办法比较土。  
  放出来给大家看看,关于DateDiff我还没弄明白,不过真的谢谢大家。Top

16 楼hreoghost(Challenge oneself,break through limit!)回复于 2006-04-06 08:31:30 得分 0

学习Top

相关问题

  • ■■■关于查询后,分页跳转的问题!,里面有代码!急,在线等.........
  • 高分求关于时间段的查询代码!
  • 帮我分析一下数据库查询代码!
  • 高分求一段组合查询的代码.....
  • 高分求火车站点查询源代码(c 语言)
  • 谁有域名查询代码?急啊,有分!
  • [分享]本人整理的12部可在线查询的语法参考手册和一些常用代码、工具、技术文档
  • 这样的查询要求SQL代码怎么写?100分酬谢!
  • 200分求城市公交查询相关系统的源代码
  • 查询分析器中能执行,在ado中如何写代码?

关键词

  • 代码
  • 查询
  • 函数
  • 语句
  • date
  • 间隔
  • 语法
  • 数值
  • datediff
  • 日期

得分解答快速导航

  • 帖主:leeleko
  • sxsgssgs
  • lovexpshl
  • iuhxq
  • znjgress

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo