【发布时间】:2015-04-24 08:27:50
【问题描述】:
我的 SQL 查询没有选择我要求的所有行。它只考虑日期时间的 Day 部分;月没有得到任何关注。
这是我的查询:
SELECT *
FROM Reservations
WHERE ReservationDate >= '24/04/2015' AND ReservationDate <= '24/03/2015'"
这些日期没有结果,但是当日期更改为:
SELECT *
FROM Reservations
WHERE ReservationDate >= '24/04/2015' AND ReservationDate <= '17/03/2015'"
我得到 2 个结果 when ReservationDate= "17/04/2015 15:02:03" and "21/04/2015 16:05:56"。
顺便说一下,ReservationDate 字段是字符串格式的。即使在 DateTime 上,结果也是一样的。
ReservationID FriendID TableNumber ReservationDate ReservationStatus
16 58767732 32 21/04/2015 17:06:54 False
17 -1 32 21/04/2015 17:10:41 False
18 -1 2 21/04/2015 17:17:23 False
2 58767732 3 04/04/2015 19:37:17 False
3 -1 7 04/04/2015 19:37:43 False
4 -1 5 04/04/2015 23:24:24 False
5 -1 31 05/04/2015 16:29:02 False
6 -1 6 05/04/2015 16:40:29 False 7 -1 6 05/04/2015 17:12:47 False
8 58767732 32 09/04/2015 16:24:00 False
9 -1 6 09/04/2015 16:25:03 False
【问题讨论】:
-
你能包含来自
Reservations的样本数据吗? -
ReservationID |好友ID |预订日期
-
@Netanelgo 请将
AND更改为OR。您不能有日期在两个不相交的数据范围之间的预订。 -
@ConsiderMe,而是切换 >= 和
-
第一个也是最重要的问题是,这些真的是日期还是字符串?您使用的是哪个 DBMS?