Oracle查询日期和时间

时间:2018-10-12 21:06:00

标签: sql oracle

我试图从start_date小于或等于特定日期和时间值的表中获取数据:

SELECT * FROM Table1 WHERE START_DATE <= TO_DATE('2/21/2018 2:40:20 PM', 'MM/dd/yyyy hh:mm:ss tt')

我得到的错误是format code appears twice

我尝试了不同的格式,但仍然无法正确显示

1 个答案:

答案 0 :(得分:3)

您有两个问题。

1)分钟的格式模型是“ mi”,而不是“ mm”。

2)AM / PM的格式模型是“ AM”,而不是“ tt”。

所以

TO_DATE('2/21/2018 2:40:20 PM', 'MM/dd/yyyy hh:mi:ss AM')

或者,更简单

TO_DATE('2/21/2018 14:40:20', 'MM/dd/yyyy hh24:mi:ss')

(即24小时制)