我需要找出两个 date
年的差异
但年份应该是小数
例子
我需要找出 16-jun-2010
到 30-Sep-2014
它应该是 4.30
年
我尝试以下方式 选择 DATEDIFF(YY,'16-jun-2010','30-sep-2014') 作为 YearsOfServices
它只给我4
最佳答案
内置函数 datediff()
的作用是计算日期之间跨越的期间边界数。
datediff(yy,'16 jun 2014','30 Sep 2015')
returns 1
如果计算以天为单位的两个日期之间的差异,并将它们除以 400 年跨度 (365.2425) 中以天为单位的日历年的平均长度,您将获得更准确的结果:
datediff(day,{start-date},{end-date},) / 365.2425
例如,
select datediff(day,'1 Jan 2000' ,'18 April 2014') / 365.2425
return 14.29461248
— 将其四舍五入到所需的精度。
关于SQl 日期差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34605742/