with t_base as (
select
-- 当前时间
sysdate as sys_date,
-- 当前时间戳(到纳秒,秒以下为假数据)
to_timestamp(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')||'.123456789','yyyy-mm-dd hh24:mi:ss.ff') as sys_timestamp
from dual
)
select
-- 当前时间
sys_date as 当前DATE,
-- 当前时间戳(到纳秒,秒以下为假数据)
sys_timestamp as 当前TIMESTAMP,
-- 日期转字符串,最多精确到秒
to_char(sys_date,'yyyy-mm-dd hh24:mi:ss') as 当前DATE字符串,
-- 时间戳转字符串,精确到秒
to_char(sys_timestamp,'yyyy-mm-dd hh24:mi:ss') as 当前TIMESTAMP到秒字符串,
-- 时间戳转字符串,精确到毫秒
to_char(sys_timestamp,'yyyy-mm-dd hh24:mi:ss.ff3') as 当前TIMESTAMP到毫秒字符串,
-- 时间戳转字符串,精确到微妙(一般系统能取到的最精确时间戳)
to_char(sys_timestamp,'yyyy-mm-dd hh24:mi:ss.ff6') as 当前TIMESTAMP到微秒字符串,
-- 时间戳转字符串,精确到纳秒(一般系统取不到)
to_char(sys_timestamp,'yyyy-mm-dd hh24:mi:ss.ff9') as 当前TIMESTAMP到纳秒字符串,
-- 时间戳转时间方法1(时间只能到秒)
to_date(to_char(sys_timestamp,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') TIMESTAMP转DATE1,
-- 时间戳转时间方法2(时间只能到秒)
sys_timestamp + 0 TIMESTAMP转DATE2,
-- 时间转时间戳(只能精确到秒)
to_timestamp(to_char(sys_date,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') as DATE转TIMESTAMP
from t_base
Oracle 时间的相关操作
最新推荐文章于 2022-07-05 15:26:39 发布