如何使用以下格式查询日期:
02/13/2013 12:05:48
select *
from TOTAL_SUBS
where TIME BETWEEN TO_DATE('2013-13-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS')
AND TO_DATE('2013-12-14 00:00:00', 'SYYYY-MM-DD HH24:MI:SS');
我已尝试使用该代码,但我对此日期的预期仅在2013年2月13日发布,结果中没有时间“12:05:48”。
答案 0 :(得分:2)
编辑:建议将to_char()作为需求格式,因为在运行查询的任何地方,NLS_DATE_FORMAT可能都不一样!
如果您想要更改NLS,请执行此操作。
alter session set nls_date_format='MM/DD/YYYY HH24:MI:SS';
最后,在select中进行TO_CHAR()转换。实际上,当您想要以您期望的格式打印(请参阅)DATE数据类型时,请使用此方法。
select * , TO_CHAR(TIME,'MM/DD/YYYY HH24:MI:SS') my_datetime
from TOTAL_SUBS
where TIME BETWEEN TO_DATE('2013-02-13 00:00:00', 'SYYYY-MM-DD HH24:MI:SS')
AND TO_DATE('2013-12-14 23:59:59', 'SYYYY-MM-DD HH24:MI:SS');
编辑月份和时间戳以包括到mdnight。希望这有帮助!
答案 1 :(得分:0)
您使用什么应用程序?
如果是Oracle SQL Developer,您只需要转到“工具”菜单 - >数据库 - > NLS。
根据需要添加日期格式。
SELECT *
FROM total_subs
WHERE time BETWEEN To_date('2013-02-13 00:00:00', 'YYYY-MM-DD HH24:MI:SS') AND
To_date('2013-12-14 00:00:00', 'YYYY-MM-DD HH24:MI:SS');
再次尝试查询。
如果没有这个,无论查询结构如何,它都不会显示时间