0

我想计算两个日期之间的百分比。下表给出了两天计数的值。从两个文本框(txtStart 和 txtEnd)读取日期。

slNo  productName  count1  count2
....  ...........  .....   ......
1     A             50      20
2     B             30      39
3     C             20      23
4     D             15      34
5     E             18      45

我的查询:

SELECT  slNo  
        productName  
        count1, count2
        cast((count1* 100.0) / (DATEDIFF(day, @start, @end) * 250)) AS  
        Percentage1, cast((count2* 100.0) / (DATEDIFF(day, @start, @end) 
        * 250)) AS Percentage2 FROM  dbo.tblPercentage

在使用上述查询时,我遇到了一个错误。错误是:"Incorrect parameter count in the call to native function 'DATEDIFF'"

如何获取日期差异并应用于上述 sql 查询。

每天计数 250 次按 100% 计算。上表显示两天计数。所以 2*250 被认为是 100%。如果算上 3 天,那么它将是 3*250。所以帮助我使用 sql 查询计算百分比。谢谢

4

1 回答 1

1

如果我正确理解您的问题,您可能正在寻找这个

SELECT  slNo  
        productName  
        count, 
        cast(((DATEDIFF(day,'2014-08-05','2014-06-05') * 250.0) / 250) AS decimal(9, 3)) Percentage1 
FROM  dbo.tblPercentage

注意:您可以用从这样的文本框中获得的 startdate 和 enddate 参数替换日期

DATEDIFF(day,@startdate,@enddate)
于 2015-03-18T11:18:57.010 回答