首页 > 解决方案 > 在 Oracle SQl 中拆分日期和时间

问题描述

我有一个以 mm/dd/yyyy HH24:mi:ss 格式存储的日期时间(例如 01/25/2005 10:10:15 PM)。Oracle SQL中是否有任何内置函数可以分别获取日期值和时间值?

我不能使用空间来拆分 2 个值,因为有 2 个空格(一个在日期和时间之间,另一个在时间和 AM/PM 之间)

标签: sqloracledatetimesplit

解决方案


如果您有date,并且想要分别显示日期和时间部分,请使用to_char()

select to_char(mydate, 'yyyy-mm-dd') datepart, to_char(mydate, 'hh24:mi:ss') timepart
from mytable

您可以使用 的第二个参数控制字符串表示的格式to_char()

如果你有一个字符串,并且你想在第一个空格之后将它分成两个,那么使用字符串函数:

select substr(mystr, 1, instr(mystr, ' ') - 1) datepart, substr(mystr, instr(mystr, ' ') + 1)
from mytable

推荐阅读