时间:2021-07-01 10:21:17 帮助过:30人阅读
sql中获得部分时间的方法: 有的时候,我们可能希望按月、按天、按年做一些数据统计,但是,我们实际保存的数据可能是一个很精确的发生时间,可能是到秒。如何根据一个时间之截取其中的一部分就成了问题。 有两个解决方法: 最直接的想法利用DatePart或者Yea
sql中获得部分时间的方法:
有的时候,我们可能希望按月、按天、按年做一些数据统计,但是,我们实际保存的数据可能是一个很精确的发生时间,可能是到秒。如何根据一个时间之截取其中的一部分就成了问题。
有两个解决方法:
最直接的想法利用DatePart或者Year、Month、Day函数
CAST(
(
STR( YEAR( GETDATE() ) ) + ’/’ +
STR( MONTH( GETDATE() ) ) + ’/’ +
STR( DAY( GETDATE() ) )
)
AS DATETIME
)
如果只要年和月,就省掉前面的。
方法二,利用时间计算函数
例如获得月
DateAdd(month, DateDiff(month, 0, Coltime), 0)
原理就是数据库时间值Coltime减掉1900-1-1获得这期间的月份个数,,然后再重新加回1900-1-1。