首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

时间段查询的有关问题

2012-02-25 
时间段查询的问题h_rdate 2007-05-29ANDjh_rdate 2007-05-31可以查到2007-05-29到2007-05-30的内容但

时间段查询的问题
h_rdate   > = '2007-05-29 '   AND   jh_rdate   <= '2007-05-31 '

可以查到   2007-05-29   到   2007-05-30的内容
但是查不到 '2007-05-31 '   的内容


[解决办法]
<= '2007-05-31 '改为 < '2007-06-01 '

<= '2007-05-31 '只会查到2007-05-31零点以前的记录
[解决办法]
要是h_rdate是smalldatetime or datetime类型,可以这样:
CONVERT(nchar(10),h_rdate,120) > = '2007-05-29 ' AND CONVERT(nchar(10),h_rdate,120) <= '2007-05-31 '

或者:
CONVERT(nchar(10),h_rdate,120) BETWEEN '2007-05-29 ' AND '2007-05-31 '

[解决办法]
2007-05-31他等于2007-05-31 00:00:00
你可以写成 2007-05-31 23:59:59
但是在同的日期格式是不一样的,有可能是分上午下午的所以建议你使用2007-06-01
[解决办法]
bill024(咖啡熊)兄正解

h_rdate,jh_rdate肯定是为日期型,它后面还会有分有秒,毫秒,

[解决办法]
convert(char(10),h_rdate,120) between '2007-05-29 ' AND '2007-06-01 '
这个可以看到 '2007-05-29 ' 到 '2007-05-31 '的内容

热点排行