Oracle中如何去除Epoch时间转日期后的时间部分
Oracle Epoch时间转日期时去除时间部分的解决方法
你当前的查询将Epoch时间转换为带时间的日期格式,要仅保留日期部分,有两种常用修改方式:
方法一:使用TRUNC函数(保留DATE类型)
TRUNC函数会截断日期的时间部分,仅保留年月日,结果仍为DATE类型,在Oracle Developer中显示时自动隐藏时间:
SELECT TICKET.TICK_NUM AS "Ticket Number", TRUNC(TO_DATE('19700101', 'YYYYMMDD') + (DATECREATED / 86400)) AS "Created", TRUNC(TO_DATE('19700101', 'YYYYMMDD') + (FIXEDTIME / 86400)) AS "Completed" FROM TICKET WHERE TICKET.DATECREATED BETWEEN 1675209600 and 1677196800;
方法二:使用TO_CHAR函数(转换为字符串)
如果需要将结果转换为特定格式的字符串,可使用TO_CHAR指定日期格式,直接输出仅含日期的文本:
SELECT TICKET.TICK_NUM AS "Ticket Number", TO_CHAR(TO_DATE('19700101', 'YYYYMMDD') + (DATECREATED / 86400), 'MM/DD/YYYY') AS "Created", TO_CHAR(TO_DATE('19700101', 'YYYYMMDD') + (FIXEDTIME / 86400), 'MM/DD/YYYY') AS "Completed" FROM TICKET WHERE TICKET.DATECREATED BETWEEN 1675209600 and 1677196800;
注:格式符MM/DD/YYYY对应月/日/年,若需要日/月/年可改为DD/MM/YYYY,匹配你示例中的2/1/2023格式。
内容的提问来源于stack exchange,提问作者Student_OKIE
相关产品推荐
相关产品推荐

