数据库10位秒时间戳数字转日期处理 |
您所在的位置:网站首页 › oracle时间戳格式转换 › 数据库10位秒时间戳数字转日期处理 |
处理数据库十位时间戳
说明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中没有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中处理这类事件函数了 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 |