欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

SqlServer 时间字段格式化

程序员文章站 2022-06-13 10:15:34
...

在设计数据库报表中时间字段时,有的时候可以设计为DateTime类型,但是在有的情况下,我们需要设计成BigInt类型,然后再持久化的时候可以传入但时间的毫秒数(当然这个毫秒数是距离1970-01-01 08:00:00.000这个时间点的 ),所以在数据查询的时候需要显示能够

在设计数据库报表中时间字段时,有的时候可以设计为DateTime类型,但是在有的情况下,我们需要设计成BigInt类型,然后再持久化的时候可以传入但时间的毫秒数(当然这个毫秒数是距离1970-01-01 08:00:00.000这个时间点的SqlServer 时间字段格式化),所以在数据查询的时候需要显示能够看懂的时间格式,而不是毫秒数。如下:

SqlServer 时间字段格式化

这个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进行转化

SqlServer 时间字段格式化