sql - Oracle SQL - 尝试将一秒添加到我从文本字段中提取的日期
问题描述
SQL新手在这里。
在 Oracle BI Publisher 中,我使用 Oracle SQL 执行以下操作。
我只需要从字符串中提取时间并在时间上增加一秒。'Flight' 列中的数据如下所示:
Dayton 01:23:59
我只使用以下语法拉时间:
substr(Flight,length(Flight)-8,8)
这给了我这个:
01:23:59
在下面凌乱的代码中,我试图在有效的时间上增加一秒,但第二秒是“60”,这显然是一个无效时间。
substr(lpad(to_number(replace(substr(Flight,length(Flight)-15,9),':')+2,'999999'),6,'0'),1,2)||':'||substr(lpad(to_number(replace(substr(Flight,length(Flight)-15,9),':')+2,'999999'),6,'0'),3,2)||':'||substr(lpad(to_number(replace(substr(Flight,length(Flight)-15,9),':')+2,'999999'),6,'0'),5,2)
有什么更好的方法来做到这一点吗?
担
解决方案
你可以做类似的事情:
to_date(substr(Flight,length(Flight)-8,8), HH:MI:SS') + interval '1' second
推荐阅读
- sql-server - 数据总是从以前的数据库中获取,而不是从新的数据库中获取
- c# - Unity如何仅使用坐标允许对象在某个边界内移动
- python - Python多进程无法腌制opencv videocapture对象
- spring-boot - 为什么 SBA JMX Bean 管理报告错误?
- python - 在不同的行上打印每个参数
- javascript - CSS过渡下拉菜单,应该很简单
- python - 删除一系列标题中的字符串
- android - 隐藏 Android Navigator 显示边框
- querydsl - QueryDSL 上缺少 FROM
- java - Hortonworks HDFS 名称节点在启动时出现 tryLock 问题