使用BETWEEN进行日期调用数据时获取额外数据

时间:2014-09-05 04:42:06

标签: sql sql-server tsql

我有一个数据库,其表格如下: -

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日之间的日期数据

如何解决?

1 个答案:

答案 0 :(得分:0)

你的介意不起作用,你需要使用 -

作为条件

CONVERT(DateTime, Date_, 103) >= CONVERT(DateTime, '01/05/2014', 103) and CONVERT(DateTime, Date_, 103) <= CONVERT(DateTime, '31/05/2014', 103)

在你的情况。范围条件不适用于在日期之间过滤记录的目的。