sql中将时间戳转换为时间类型

转载 2013年12月01日 22:29:08

 

http://www.cnblogs.com/daytoday/archive/2012/01/05/2313241.html

 

在sql中将时间戳转换为时间类型


SQL里面有个DATEADD的函数。时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数。所以只要把这个时间戳加上1970-01-01 08:00:00这个时间就可以得到你想要的时间了select DATEADD(second,1268738429 + 8 * 60 * 60,'1970-01-01 00:00:00')

注解:北京时间与GMT时间关系

     1.GMT是中央时区,北京在东8区,相差8个小时   

          2.所以北京时间 = GMT时间 + 八小时

例如:

   SELECT DATEADD(S,1160701488 + 8 * 3600,'1970-01-01 00:00:00')               --时间戳转换成普通时间

   SELECT DATEDIFF(S,'1970-01-01 00:00:00', '2006-10-13 09:04:48.000') - 8 * 3600       --普通时间转换成时间戳

 

****这个语句在sql2000中就能运行,在sql2005中运行总是提示错误?为什么?

 

 

 

oracle中时间戳的算法

 

 

获取时间戳:

create or replace function getTimeStamp return integer is
  Result integer;
begin
  SELECT (SYSDATE - TO_DATE('1970-1-1 8', 'YYYY-MM-DD HH24miss')) * 86400000
    + EXTRACT(SECOND FROM SYSTIMESTAMP(3)) * 1000
 into result FROM DUAL;

  return(Result);
end getTimeStamp;

 

时间戳变化为日期格式:

create or replace function getDateFromTimeStamp(tsp in integer) return date is
  Result date;
  tt     integer;
begin
  tt := substr(tsp, 0, 13);
  SELECT ((tt - EXTRACT(SECOND FROM SYSTIMESTAMP(3)) * 1000) / 86400000 +
         TO_DATE('1970-1-1 8', 'YYYY-MM-DD HH24miss'))
    into result
    FROM DUAL;
  return(Result);
end getDateFromTimeStamp;

 

 

 

 

 

MySQL 时间戳(Timestamp)函数

1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp() mysql> select current_timestamp,current_t...

SQLServer中将时间戳转换为时间格式

--在sql中将时间戳转换为时间类型 SQL里面有个DATEADD的函数。时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数。所以只要把这个时间戳加上1970-01...
  • educast
  • educast
  • 2011年10月18日 08:44
  • 21345

mysql 时间戳与日期格式的相互转换

1、UNIX时间戳转换为日期用函数: FROM_UNIXTIME() select FROM_UNIXTIME(1156219870);     输出:2006-08-22 12:11:10 ...

Sql 时间戳(int)转换为datetime

1.SQl server 把int型时间戳转换为相应的datetime型 CONVERT(VARCHAR(20),DATEADD(SECOND,create_time,'1970-01-01...

mysql 将时间戳直接转换成日期时间

mysql 将时间戳直接转换成日期时间   from_unixtime()是MySQL里的时间函数    select uid,userid,username,email,FROM_UNIXT...
  • snn1410
  • snn1410
  • 2012年05月29日 15:54
  • 33725

SQLServer中将时间戳转换为时间格式

时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数。所以只要把这个时间戳加上1970-01-01 08:00:00这个时间就可以得到你想要的时间了select DATEADD(s...

Sql中日期类型的比较

一.存储日期的字段为日期类型MySql(Date、DateTime、TimeStamp等): 方法一:直接比较 select * from test where create_time betwe...

MySQL通过sql语句获取当前日期|时间|时间戳

原文地址:http://blog.csdn.net/llwan/article/details/40345349 一、简介 1.1 获得当前日期+时间(date + time)函数:now() My...

MySQL通过sql语句获取当前日期|时间|时间戳

1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +———————+ | now() | +———————+ | 2013-04...
  • llwan
  • llwan
  • 2014年10月21日 15:14
  • 96168

mysql在sql语句中将时间戳格式化

date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串  后面的 '%Y%m%d' 主要是将返回值格式化  例如:  mysql>SELECT F...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sql中将时间戳转换为时间类型
举报原因:
原因补充:

(最多只允许输入30个字)