oracle - 将日期差异转换为带有时间戳的日期
问题描述
如何将带有时间戳的 2 个日期的差异再次转换为带有时间戳的日期,Oracle 给出数字但我想比较时间戳。
select emp_date>to_date(sysdate,'yyyy-MM-dd HH24:MI:SS')-todate('2021-03-22 10:20:12') from emp;
上面的查询给出错误:预期的日期,但得到了 NUMBER。
提前致谢
解决方案
你说的毫无意义。两个DATE
数据类型值的差异是它们之间的天数。例如
SQL> select sysdate - to_date('21.03.2021 13:12', 'dd.mm.yyyy hh24:mi') diff from dual;
DIFF
----------
,943217593
SQL>
您可以将其转换为更漂亮的格式(天、小时、分钟、秒),但它仍然是数字,而不是日期。
因此,您不能将EMP_DATE
(这是一个DATE
数据类型列,不是吗?)与一个数字进行比较,因为它没有任何意义。
2021 年 3 月 22 日是大于还是小于 0.94?两者都不是。
推荐阅读
- c# - BizTalk 和自定义绑定并禁用接收位置
- windows - 批处理:复制上次修改时间为 15 分钟前的文件
- javascript - React Native:在Modal中根据状态值变化渲染条件组件
- c# - Anchor标签href中的eval仅赋值调用增量错误
- java - 如何从不同的活动更改视图的背景颜色
- java - Dagger2:如何在演示者类中注入改造模块
- triggers - DB2 触发器执行顺序
- javascript - 添加新元素后正确向下滚动
- mysql - 将大型mysql select语句加载到python中
- c# - 为每个单元格添加带有标签和按钮的自定义 DataGridViewColumn