在设计数据库报表中时间字段时,有的时候可以设计为datetime类型,但是在有的情况下,我们需要设计成bigint类型,然后再持久化的时候可以传入但时间的毫秒数(当然这个毫秒数是距离1970-01-01 08:00:00.000这个时间点的),所以在数据查询的时候需要显示能够看懂的时间格式,而不是毫秒数。如下:
这个prize_time字段便是毫秒数,所以需要转换,在sqlserver中进行查询的时候,可以用dateadd函数,函数具体的用法:
定义和用法 dateadd() 函数在日期中添加或减去指定的时间间隔。
语法dateadd(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
datepart 参数可以是下列的值:
datepart缩写
年 yy, yyyy
季度 qq, q
月 mm, m
年中的日 dy, y
日 dd, d
周 wk, ww
星期 dw, w
小时 hh
分钟 mi, n
秒 ss, s
毫秒 ms
微妙 mcs
纳秒 ns
这个函数可以进行转换,本例中可以用dateadd(s,[prize_time]/1000,'1970-01-01 08:00:00') prize_time进行转化!
