首页 > 解决方案 > 在当前查询中使用 round 时需要帮助

问题描述

SELECT
    (TS_LEXIZE('english_stem',
               UNNEST(STRING_TO_ARRAY(
                   REGEXP_REPLACE(feedback, '[^a-zA-Z]+', ' ', 'g'),
                   ' ')
               )))[1] AS token,
    AVG(rating) AS avg_rating
FROM customer_survey 
GROUP BY 1
HAVING COUNT(1) >= 3
ORDER BY 2 DESC
;

我有以下查询,如果您想将评分限制为小数点后 2 位,您会在哪里添加 ROUND ()?

标签: sqlroundingpgadmin-4

解决方案


SELECT
    (TS_LEXIZE('english_stem',
               UNNEST(STRING_TO_ARRAY(
                   REGEXP_REPLACE(feedback, '[^a-zA-Z]+', ' ', 'g'),
                   ' ')
               )))[1] AS token,
    ROUND(AVG(rating)) AS avg_rating
FROM customer_survey 
GROUP BY 1
HAVING COUNT(1) >= 3
ORDER BY 2 DESC
;

通过在平均值之前添加一轮,我得到了它。


推荐阅读