尝试将 sql 查询的结果四舍五入到 2 位小数

Trying to round the results of a sql query to 2 decimals

在下面的查询中,我试图 return SUM 行的数据有 2 个小数位 (.00):

SELECT
  CONVERT(varchar, YEAR(COALESCE(release_date, requested_date)))
  + RIGHT('00' + CONVERT(varchar, MONTH(COALESCE(release_date, requested_date))), 2) AS yrmnth,
  salesrep,
  customer_name,
  SUM(price_per_ea * COALESCE(open_release_qty, open_order_qty)) AS ext_price

在 select:

中使用 round 函数
round(SUM(price_per_ea * COALESCE(open_release_qty, open_order_qty)),2)

您可以使用转换来控制格式

SELECT
CONVERT(VARCHAR, YEAR(COALESCE(release_date, requested_date))) 
    + RIGHT('00' + CONVERT(VARCHAR, 
 MONTH(COALESCE(release_date, requested_date))),2) as yrmnth
,salesrep
,customer_name
,  Convert(decimal(12,2), 
     SUM(price_per_ea * COALESCE(open_release_qty, open_order_qty)))  as ext_price