我有一个数据库,其表格如下: -
ID Name Amount Date
001 abc 200 01/05/2014
001 abc 200 02/05/2014
001 abc 200 03/05/2014
.
.
.
001 abc 200 31/05/2014
001 abc 200 01/06/2014
001 abc 200 02/06/2014
执行以下查询时:
SELECT *
FROM table_name
WHERE Date_ between '01/05/2014' AND '31/05/2014'
ORDER BY CONVERT(DateTime, Date_, 103) DESC";
它显示了考虑日期01/06/2014和02/06/2014的额外数据,以及2014年5月1日至2014年5月31日之间的日期数据
如何解决?
答案 0 :(得分:0)
你的介意不起作用,你需要使用 -
作为条件
CONVERT(DateTime, Date_, 103) >= CONVERT(DateTime, '01/05/2014', 103) and CONVERT(DateTime, Date_, 103) <= CONVERT(DateTime, '31/05/2014', 103)
在你的情况。范围条件不适用于在日期之间过滤记录的目的。