注册 登录
编程论坛 ASP技术论坛

请问这条SQL语句该怎么写?

liu_libra 发布于 2008-11-01 21:40, 802 次点击
搜索条件为 status为1(类型为 bit),截止时间 adend 大于当前日期,语句如下:
set rs=server.CreateObject("adodb.recordset")
  sql="select * from ad where status='1' and adend>now() order by adsite asc,num"
  rs.open sql,conn,1,1
提示Now 不是可以识别的函数名,我该如何修改?
7 回复
#2
multiple19022008-11-01 22:28
你啥数据库?

now是跟数据库驱动程序支持不支持有关的。
#3
liu_libra2008-11-01 22:37
是sql server的
#4
sunfishy2008-11-02 09:37
你的adend应该是个变量吧.

是否应该用&adend&分开呢.
#5
liu_libra2008-11-02 15:49
楼上说的好像不需要吧。请各位大侠指点指点,我的数据库是SQL SERVER的,请问该怎么改改
#6
yms1232008-11-02 15:55
sql="select * from ad where status='1' and adend>getdate() order by adsite asc,num"
SQL Server可以使用getdate函数这个是SQL里获取当前时间的函数,now函数个人所知是Access里的函数。
#7
yms1232008-11-02 15:59
sql="select * from ad where status='1' and Datediff('d',adend,'#"&Now()&"#')>0 order by adsite asc,num"
另一种比较办法使用DateDiff函数求两个日期之间的间隔
日期adend是未来时间则返回正数,是过去时间则返回负数
#8
liu_libra2008-11-02 16:09
恩,OK了,谢谢楼上的版主
1