我正在尝试在两个日期之间搜索数据,但它检索不在我给出的范围内的旧数据?请建议我如何重写下面的查询逻辑
select *
from Users
where TO_CHAR(Users.lastloggedindate,'dd-MON-yy HH.MI.SS') between '17-JAN-17 07.16.55' and
'18-JAN-17 09.20.22';
答案 0 :(得分:2)
尝试使用to_date()
代替to_char()
,将范围的两个点转换为可与您的登录日期进行比较的日期:
select *
from Users
where Users.lastloggedindate between to_date('2017-17-01 07:16:55', 'YYYY-MM-DD HH24:MI:SS') and
to_date('2017-18-01 09:20:22', 'YYYY-MM-DD HH24:MI:SS');