数据库查找2个日期之间的数据怎么写代码?
日期格式是YY-MM-DD我用BETWEEN,但是只能比一个月份的,跨年数据就不对了,请问怎么回事?日期是从另一个页面request过来直接用的,是一个文本框里面的,用d...
日期格式是YY-MM-DD
我用BETWEEN,但是只能比一个月份的,跨年数据就不对了,请问怎么回事?
日期是从另一个页面request过来直接用的,是一个文本框里面的,用date()函数直接获取的数据
数据库用的ACCESS
代码如下:
sql = "select * from guo where 时间 between #"+begintime+"#"+" and "+" #"+endtime+"#"+" order by 时间 ASC" 展开
我用BETWEEN,但是只能比一个月份的,跨年数据就不对了,请问怎么回事?
日期是从另一个页面request过来直接用的,是一个文本框里面的,用date()函数直接获取的数据
数据库用的ACCESS
代码如下:
sql = "select * from guo where 时间 between #"+begintime+"#"+" and "+" #"+endtime+"#"+" order by 时间 ASC" 展开
4个回答
展开全部
取决于不同的数据库以及日期的类型,你的日期类型时日期型还是字符串?
ACCESS比较麻烦的呢。先把时间分解为yyyymmdd然后比较就可以了
sql = "select * from guo where
DatePart('yyyy', date(时间)) +
DatePart('mm', date(时间)) +
DatePart('dd', date(时间))
between #"+DatePart('yyyy', date(begintime)) +
DatePart('mm', date(begintime)) +
DatePart('dd', date(begintime)) +"#"+" and "+" #"+DatePart('yyyy', date(endtime)) +
DatePart('mm', date(endtime)) +
DatePart('dd', date(endtime)) +"#"+" order by 时间 ASC"
ACCESS比较麻烦的呢。先把时间分解为yyyymmdd然后比较就可以了
sql = "select * from guo where
DatePart('yyyy', date(时间)) +
DatePart('mm', date(时间)) +
DatePart('dd', date(时间))
between #"+DatePart('yyyy', date(begintime)) +
DatePart('mm', date(begintime)) +
DatePart('dd', date(begintime)) +"#"+" and "+" #"+DatePart('yyyy', date(endtime)) +
DatePart('mm', date(endtime)) +
DatePart('dd', date(endtime)) +"#"+" order by 时间 ASC"
追问
这个执行报错。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-03-31
展开全部
你想复杂了。
如下:
select * from table where 时间列名>='2010-12-12 00:00:00' and 时间列名<='2011-03-31 23:59:59'
时间格式要与时间字段里的时间格式一样
如下:
select * from table where 时间列名>='2010-12-12 00:00:00' and 时间列名<='2011-03-31 23:59:59'
时间格式要与时间字段里的时间格式一样
追问
ACCESS的日期用的文本格式,必须要日期格式才行吧?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是BETWEEN AND,不过要小心小时分秒的问题。你如果跨年数据不对,那肯定还是你的语法有问题。另外,你也可是试试>= 和<=配合一起使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql写贴上来看看
追问
请帮我看看。
追答
你把参照的时间格式化成yy-MM-dd格式 应该就行了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询