我有一个围绕datediff sql函数的难题,本质上我有一个拥有保险等保单的客户列表。我可以获得以下详细信息:
保单结束日期
策略开始日期
今天的日期
我试图提取策略术语已达到的百分比,本质上是为了得到这个值,我使用datediff函数将上面的值转换为“天”,以获得已过去的天数和总共的天数。我想除以这些得到%但是输出是0
我的公式,是双方分工分开但不在一起的,如下所示:
, (DATEDIFF(DD,DATEADD(YY,-1,P.RDAT#),GETDATE()))
/
DATEDIFF(DD,DATEADD(YY,-1,P.RDAT#),P.Rdat#)
我试过铸造/转换,认为这是与此有关,但没有任何效果,如果有人可以帮助这将是超级。
提前谢谢
1条答案
按热度按时间9lowa7mx1#
sql server执行整数除法,所以
1/2
是0
而不是0.5
. 我想你想要:我不知道这是怎么回事
dateadd()
是应该做的。你也许可以简化这个逻辑。为此,我建议用样本数据和期望的结果问一个新问题。