我们有一个表DATE列d.
我想获得d列比某些值更大/更低的所有行,不管日期如何.
例如
| d | ------------------- |2009/11/1 15:55:23| -------------------- |2009/11/2 15:55:23| -------------------- |2009/11/3 15:55:23| -------------------- |2009/11/3 17:55:23| --------------------
例如,如果我想要在下午5点后标记的所有记录:
select d from my_table where extract( hour from d ) > TO_DATE ('17:00:00','HH24:MI:SS')
这应该只返回一个记录
|2009/11/3 17:55:23|
ORA-30076: invalid extract field for extract source Cause: The extract source does not contain the specified extract field.
有没有更好的方法来做到这一点?
有什么错误?提取仅适用于sysdate,如我发现的所有示例中?
提前致谢
解决方法
这个怎么样?
select d from my_table where to_char(d,'HH24') > '16';