sql-numeric-functions
SQL - 数值函数
Section titled “SQL - 数值函数”SQL 包含一套丰富的内置函数,用于对数值数据执行操作。这些函数可大致分类,对于直接在查询中进行数据分析、转换和计算至关重要。确切的函数名称和功能在不同 SQL 方言(如 PostgreSQL、MySQL 和 SQL Server)之间可能略有差异,但核心概念是通用的。
标量数值函数
Section titled “标量数值函数”这些函数对单个数值进行操作并返回单个值。下面是常见函数及其示例的列表。
| 函数 | 描述 | 示例用法和结果 |
|---|---|---|
| ABS(x) | 返回 x 的绝对值(非负值)。 | SELECT ABS(-15.7); → 15.7 |
| ROUND(x, d) | 将值 x 四舍五入到 d 位小数。如果省略 d,则四舍五入到最接近的整数。 | SELECT ROUND(123.456, 2); → 123.46 |
| CEIL() / CEILING(x) | 返回大于或等于 x 的最小整数值。 | SELECT CEILING(15.2); → 16 |
| FLOOR(x) | 返回小于或等于 x 的最大整数值。 | SELECT FLOOR(15.7); → 15 |
| POWER(x, y) | 返回 x 的 y 次幂。 | SELECT POWER(3, 4); → 81 |
| SQRT(x) | 返回 x 的非负平方根。 | SELECT SQRT(64); → 8 |
| MOD(x, y) | 返回 x 除以 y 的余数(取模运算符)。 | SELECT MOD(10, 3); → 1 |
| SIGN(x) | 根据 x 是负数、零还是正数,返回 -1、0 或 1。 | SELECT SIGN(-25); → -1 |
| PI() | 返回 Pi 的常量值。 | SELECT PI(); → 3.14159265... |
| RAND() / RANDOM() | 返回一个介于 0 和 1 之间的随机浮点值。(语法因 RDBMS 而异)。 | SELECT RAND(); → 0.12345... (一个随机值) |
三角函数和对数函数
Section titled “三角函数和对数函数”这些是用于科学和工程计算的更专业的数学函数。大多数系统期望角度以弧度表示。
| 函数 | 描述 |
|---|---|
| SIN(x), COS(x), TAN(x) | 返回 x 的正弦、余弦和正切,其中 x 是以弧度表示的角度。 |
| ASIN(x), ACOS(x), ATAN(x) | 返回 x 的反正弦、反余弦和反正切。 |
| DEGREES(x), RADIANS(x) | 分别将值从弧度转换为度,以及从度转换为弧度。 |
| LOG(x), LOG10(x), LN(x) | 返回 x 的自然对数(以 e 为底)或常用对数(以 10 为底)。 |
| EXP(x) | 返回 e 的 x 次幂。 |
聚合函数注意事项: 不要将标量数值函数与聚合函数(如 SUM()、AVG()、COUNT()、MIN() 和 MAX())混淆。聚合函数对一组值(例如,列中的所有值)进行操作,以返回单个汇总值,通常与 GROUP BY 子句一起使用。