You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MS SQL SERVER中percentile函数返回float值如何保留4位小数

MS SQL Server percentile函数结果四舍五入保留4位小数的实现方案

你可以直接使用SQL Server原生的ROUND()函数包裹percentile_disc的返回结果,该函数的第二个参数传入4即可指定保留4位小数。

你原SQL修改后如下:

SELECT DISTINCT ROUND(
    percentile_disc(0.5) WITHIN GROUP (ORDER BY Number) OVER(),
    4
) 
FROM [TABLE]

补充说明

  • 上述SQL中的[TABLE]请替换为你的实际业务表名,若表名不属于SQL Server保留关键字,也可以省略方括号。
  • 如果你需要避免float类型的精度隐患,也可以额外嵌套CAST函数将结果转换为固定精度的decimal类型:
SELECT DISTINCT CAST(
    ROUND(percentile_disc(0.5) WITHIN GROUP (ORDER BY Number) OVER(), 4) 
    AS DECIMAL(20,4)
) 
FROM [TABLE]

内容的提问来源于stack exchange,提问作者Danyal Danish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 09:30:00