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