在特定的sysdate之间进行SQL查询?

时间:2013-10-04 06:33:36

标签: sql oracle

我正在使用Oracle DB 10g,我试图在两个日期之间获取数据,数据的数据库格式为:

10/4/2013 9:04:38 AM

我尝试了一些SQL查询,但它给出了错误......

select * from test_table where test_execution_date between '9/2/2012' and '7/2/2013'

select * from test_table where test_execution_date between '9/2/2012 9:04:38 AM' and '7/2/2013 9:04:38 AM'

它总是提供相同的error : ORA-01843: not a valid month

2 个答案:

答案 0 :(得分:3)

尝试使用

TO_DATE(thedatevalue,'MM/DD/YYYY')

答案 1 :(得分:1)

您需要将字符串转换为日期

select * from test_table where test_execution_date between 
TO_DATE('9/2/2012', 'DD/MM/YYYY') and TO_DATE('7/2/2013', 'DD/MM/YYYY')