zoukankan      html  css  js  c++  java
  • MSSQL中UNIX时间的转换问题

    --有的时候需要用到UNIX时间,该时间是指从'1970-01-01 00:00:00‘到当前的时间的秒数,在UNIX里这个叫时间戳,为了不和MSSQL的时间戳冲突(MSSQL的时间戳实际上是一个计数器)。这里就叫UNIX时间。另外下面的表达式也给出了精确到毫秒级单位的unix时间转换表达式

    DECLARE @unixtime bigint

    DECLARE @adate datetime

    --下面的表达式的功能是将datetime类型的当前时间转换成从'1970-01-01 00:00:00‘到当前的时间的秒数
    SET @unixtime = CONVERT(bigint,DATEDIFF(mi,'1970-01-01 00:00:00', GETDATE())) * 60 + DATEPART(ss,GETDATE())

    --下面的表达式的功能是将从'1970-01-01 00:00:00‘到当前的时间的秒数转换成datetime类型
    SET @adate = DATEADD (ss ,@unixtime % 60 ,DATEADD(mi,@unixtime / 60,'1970-01-01 00:00:00'))

    SELECT @unxitime,@adate

    --下面的表达式的功能是将datetime类型的当前时间转换成从'1970-01-01 00:00:00‘到当前的时间的毫秒数
    SET @unixtime = CONVERT(bigint,DATEDIFF(mi,'1970-01-01 00:00:00.000', GETDATE())) * 60000 + DATEPART(s,GETDATE()) * 1000 + DATEPART(ms, GETDATE())

    --下面的表达式的功能是将从'1970-01-01 00:00:00‘到当前的时间的毫秒数转换成datetime类型
    SET @adate = DATEADD (ms ,@unixtime % 60000 ,DATEADD(mi,@unixtime / 60000,'1970-01-01 00:00:00.000'))

    SELECT @unxitime,@adate

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/kafuwei/archive/2007/03/07/1523037.aspx

    摘自:http://hi.baidu.com/wuwei2146/item/cf89d0ccffc8173b4594163c

  • 相关阅读:
    Maven_自动化构建和构建环节
    Maven_运行时环境
    构建的概念
    Maven_真的需要吗?
    28)拷贝构造函数
    27)构造和析构函数
    26)多文件形式编写类步骤
    25)类的封装
    24)类
    23)函数重载和函数指针
  • 原文地址:https://www.cnblogs.com/LegendRich/p/2976437.html
Copyright © 2011-2022 走看看