在Oracle中转换为时间

时间:2013-10-10 06:16:09

标签: oracle to-date

我在oracle'punch'中有一个表,其中存储了打孔数据。 'punchtime'列将数据作为varchar2并存储时间(如20:30:00)。当我想按打卡时间对数据进行排序时,我使用此查询

 select * from punch order by to_date(punchtime,'hh24:mi:ss')

这完美无缺。 但是以下查询不起作用

select * from punch where punchtime = to_date('01:00:00','hh24:mi:ss')

显示“不是有效月份”

任何人都可以帮助我。 我必须查询此专栏。

1 个答案:

答案 0 :(得分:1)

因为punchtime是varchar2数据类型列, 您需要查询:

select * from punch where to_date(punchtime,'hh24:mi:ss') = to_date('01:00:00','hh24:mi:ss')