数据库10位秒时间戳数字转日期处理

您所在的位置:网站首页 oracle时间戳格式转换 数据库10位秒时间戳数字转日期处理

数据库10位秒时间戳数字转日期处理

2024-04-10 15:31| 来源: 网络整理| 查看: 265

处理数据库十位时间戳 说明SQLSEREVER中转换ORACLE中转换java代码中转换

说明

项目需求需要查询一条sql语句,发现其中时间格式为10位时间戳(1464686734)不是传统意义上的yyyymmdd格式,10位类似这种一般是秒为单位,测试环境位SQLSERVER数据库,后续生产使用ORACLE,记录一下转换方式

SQLSEREVER中转换

SQLSERVER中可以使用函数DATEADD即可以实现

SELECT DATEADD(ss, t.字段名称A, '1970-01-01 08:00:00') as 别名,t.字段名称A FROM 表名 t

效果 在这里插入图片描述

ORACLE中转换

Oracle中没有DATEADD函数可以使用to_char+to_data函数使用

select sysdate, to_char( 1464686734/ ( 60 * 60 * 24) + TO_DATE('1970-01-01 08:00:00', 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS') from dual

效果 在这里插入图片描述

java代码中转换

最后就是JAVA中处理这类事件函数了

package com.test; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class TimeUtil { public static void main(String[] args) { secondTest(); } public static void secondTest(){ long second = 1464686734; String dateString = secondToDate(second,"yyyy-MM-dd HH:mm:ss"); System.out.println(dateString); } /** * 秒转换为指定格式的日期 */ private static String secondToDate(long second,String patten) { Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(second * 1000);//转换为毫秒 Date date = calendar.getTime(); SimpleDateFormat format = new SimpleDateFormat(patten); String dateString = format.format(date); return dateString; } }

控制台输出

2016-05-31 17:25:34


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3