【问题标题】:How to get 2 decimal percentage in SQL of two tables this is in SQL Server Management Studio 18如何在 SQL Server Management Studio 18 中获得两个表的 SQL 中的 2 个小数百分比
【发布时间】:2020-11-07 12:12:47
【问题描述】:

我正在尝试获取所有网站的百分比...我尝试了 UCSF_P 但它是错误的

SELECT A.Year
    ,A.Month
    ,(sum(A.BCHO) * 100 / NULLIF((sum(B.BCHO)), 0)) AS BCHO
    ,
    --SELECT FORMAT((37.0/38.0),'P3') as [ThreeDecimalsPercentage]
    FORMAT((sum(A.UCSF)) * 100 / (sum(B.UCSF)), 'P2') AS UCSF_P
    ,-------------------This is wrong
    (sum(A.UCSF) * 100 / (sum(B.UCSF))) AS UCSF
    ,(sum(A.UCLA) * 100 / (sum(B.UCLA))) AS UCLA
    ,(sum(A.UCD) * 100 / (sum(B.UCD))) AS UCD
    ,(sum(A.UCI) * 100 / (sum(B.UCI))) AS UCI
    ,(sum(A.UCSD) * 100 / (sum(B.UCSD))) AS UCSD
FROM Denials_Scrub_Final_V A
INNER JOIN Claims_Final_V B ON B.Year = A.Year
    AND A.Month = B.Month
GROUP BY A.Year
    ,A.Month
    ,A.UCSF
    ,B.UCSF
ORDER BY A.Year
    ,A.Month

【问题讨论】:

  • 我认为您可能需要为这个问题添加更多信息;我无法弄清楚你在问什么..“两张表的小数百分比”没有意义
  • 对于 2019 年和第 12 个月的 UCSF_P .....我想看到 3.38% 但我看到 300.00% 我想从 2 个视图中获得百分比。

标签: sql sql-server percentage


【解决方案1】:

我就是这样格式化的...

SELECT 
A.Year,
A.Month,
FORMAT((sum(A.BCHO)*100/NULLIF((sum(B.BCHO)),0))/100.0,'P') as BCHO,  
FORMAT((sum(A.UCSF))*100.0/(sum(B.UCSF))/100.0,'P') as UCSF,
FORMAT((sum(A.UCD))*100.0/(sum(B.UCD))/100.0,'P') as UCD,
FORMAT((sum(A.UCLA))*100.0/(sum(B.UCLA))/100.0,'P') as UCLA,
FORMAT((sum(A.UCI))*100.0/(sum(B.UCI))/100.0,'P') as UCI,
FORMAT((sum(A.UCSD))*100.0/(sum(B.UCSD))/100.0,'P') as UCSD
FROM Denials_Scrub_Final_V A
INNER JOIN  Claims_Final_V B
ON B.Year = A.Year
AND A.Month = B.Month
GROUP BY
A.Year,
A.Month,
A.UCSF,
B.UCSF
ORDER BY
A.Year,
A.Month

【讨论】:

    【解决方案2】:

    SQL Server 进行整数除法。要获得小数位,请使用100.0 而不是100

    sum(A.UCSF) * 100.0 / sum(B.UCSF)
    

    如果您特别希望结果中有 2 位数字,请使用 round() 或转换为 decimal,例如 decimal(5, 2) 或使用 format()

    【讨论】:

    • FORMAT((sum(A.UCSF))*100.0/(sum(B.UCSF))/100.0,'P') as UCSF_P,-这个解决了!!!
    猜你喜欢
    • 2021-12-29
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 2022-08-05
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 1970-01-01
    相关资源
    最近更新 更多