asp+access,sql语句问题

sql= "select * from task_Info where month(time1) <= tochar(sysdate,'mm') >= month(time2) and day(time1) <= tochar(sysdate,'dd') >= day(time2) order by task_Id desc"
说明:time1、time2分别为数据库里的两个时间字段。
这句话显示为无内容,问题在哪儿?怎么改?
我的意思是:sql= "select * from task_Info where 时间1的月 <= 当前时间的月 >= 时间2的月 and 时间1的日<= 当前时间的日 >= 时间2的日 order by task_Id desc"。

或者说,sql= "select * from task_Info where 时间1的月日 <= 当前时间的月日 <= 时间2的月日 order by task_Id desc",也行。
其实说白了就是不论是哪一年,只做月和日的比较

第1个回答  推荐于2016-01-10
sql= "select * from task_Info where time1 <= now() and time2 >= now() order by task_Id desc"追问

我的意思是:sql= "select * from task_Info where 时间1的月 <= 当前时间的月 and 当前时间的月 <= 时间2的月 and 时间1的日<= 当前时间的日 and 当前时间的日<= 时间2的日 order by task_Id desc"

追答

比如说time1是2015-6-6,time2是2015-7-6,那么符合条件的就只有2015-6-6和2015-7-6这两天,是这样的意思吗?
再比如time1是2015-6-6,time2是2015-7-5,那么将没有任何一个日期符合条件(因为没有任何一个数是比6大但又比5小的),是这样吗?

追问

不是。比如说time1是2015-6-6,time2是2015-7-6,那么2015-6-6和2015-7-6之间所有的日期都是符合条件的。我需要的是,不管是xxxx年,所有年份的6-6和7-6之间所有的日期都是符合条件。,就是sql=后面能不能只取月和日,不取年。这能实现吗?

追答

sql= "select * from task_Info where format(time1,'mmdd') = format(now(),'mmdd') order by task_Id desc"

本回答被提问者采纳