九月 5, 2023
摘要:PostgreSQL 的TRUNC()
函数返回截断为整数或截断到指定小数位的数字。
目录
语法
下面说明了 PostgreSQL 的TRUNC()
函数的语法:
TRUNC(number [, precision])
参数
TRUNC()
函数接受两个参数。
1) number
number
参数是要截断的数值。
2) precision
precision
参数是一个整数,表示小数位数。
如果precision
参数是正整数,TRUNC()
函数会截断小数点右侧的数字。
如果precision
是负整数,TRUNC()
函数将替换小数点左侧的数字。
精度参数是可选的。如果您不指定它,则默认为零 (0)。换句话说,number
会被截断为整数。
返回值
如果未指定第二个参数,PostgreSQL 的TRUNC()
函数将返回与第一个参数相同的数字数据类型。否则,如果使用两个参数,该函数将返回一个 numeric 数值。
示例
A) 截断为整数的示例
以下示例使用TRUNC()
函数将数字截断为整数:
SELECT
TRUNC(10.6);
结果是:
10
B) 截断至指定的小数位
以下语句将数字截断至小数点后两位:
SELECT
TRUNC(
1.234,
2
);
结果如下:
1.23
C) 第二个参数为负时截断数字的示例
考虑以下示例:
SELECT
TRUNC(150.45, -2)
第二个参数是 -2,因此,TRUNC()
函数替换了小数点左边的数字,结果是:
100
D) 截断查询返回的数字
请参阅示例数据库中的film
、film_category
和category
表,如下:
以下语句计算了按电影类别的平均出租率:
SELECT
NAME,
TRUNC(AVG( rental_rate ), 2)
FROM
film
INNER JOIN film_category
USING(film_id)
INNER JOIN category
USING(category_id)
GROUP BY
NAME
ORDER BY NAME;
在此示例中,我们使用TRUNC()
函数将平均出租率截断至小数点后两位。
下图说明了结果:
在本教程中,您学习了如何使用 PostgreSQL 的TRUNC()
函数来截断数字。
了解更多
PostgreSQL 教程:数学函数
PostgreSQL 文档:数学函数和操作符