SQL数学函数

数学函数

1. 基本数学函数

  • ABS(x):返回 x 的绝对值。
  • CEIL(x)CEILING(x):返回大于或等于 x 的最小整数。
  • FLOOR(x):返回小于或等于 x 的最大整数。
  • ROUND(x, n):将 x 四舍五入到 n 位小数。
  • TRUNC(x, n):将 x 截断到 n 位小数(在某些数据库系统中,如 Oracle)。

2. 三角函数

  • SIN(x):返回 x 的正弦值。
  • COS(x):返回 x 的余弦值。
  • TAN(x):返回 x 的正切值。
  • ASIN(x):返回 x 的反正弦值。
  • ACOS(x):返回 x 的反余弦值。
  • ATAN(x):返回 x 的反正切值。

3. 指数和对数函数

  • EXP(x):返回 ex 次幂。
  • LN(x):返回 x 的自然对数。
  • LOG(x):返回 x 的以 10 为底的对数。
  • LOG2(x):返回 x 的以 2 为底的对数。

4. 幂函数

  • POWER(x, y):返回 xy 次幂。
  • SQRT(x):返回 x 的平方根。

5. 随机函数

  • RAND():返回一个在 0 到 1 之间的随机数。
  • RANDOM():返回一个在 0 到 1 之间的随机数(在某些数据库系统中,如 PostgreSQL)。

6. 其他数学函数

  • GREATEST(x, y, ...):返回参数中的最大值。
  • LEAST(x, y, ...):返回参数中的最小值。
  • MOD(x, y):返回 x 除以 y 的余数。

示例

假设有一个表 numbers,包含以下数据:

id value
1 3.14
2 -2.71
3 1.41

示例 1:基本数学函数

SELECT 
    id, 
    value, 
    ABS(value) AS absolute_value, 
    CEIL(value) AS ceiling_value, 
    FLOOR(value) AS floor_value, 
    ROUND(value, 2) AS rounded_value
FROM 
    numbers;

结果:

id value absolute_value ceiling_value floor_value rounded_value
1 3.14 3.14 4 3 3.14
2 -2.71 2.71 -2 -3 -2.71
3 1.41 1.41 2 1 1.41

示例 2:三角函数

SELECT 
    id, 
    value, 
    SIN(value) AS sine_value, 
    COS(value) AS cosine_value, 
    TAN(value) AS tangent_value
FROM 
    numbers;

结果:

id value sine_value cosine_value tangent_value
1 3.14 0.00159265 -0.999999999 -0.00159265
2 -2.71 -0.420201004 -0.912945251 0.460170004
3 1.41 0.987346029 0.158333152 6.236147292

示例 3:指数和对数函数

SELECT 
    id, 
    value, 
    EXP(value) AS exponential_value, 
    LN(value) AS natural_logarithm, 
    LOG(value) AS common_logarithm
FROM 
    numbers;

结果:

id value exponential_value natural_logarithm common_logarithm
1 3.14 23.104000057 1.144223892 0.496929648
2 -2.71 0.06598803585 -0.997547553 -0.432659903
3 1.41 4.103566842 0.343323839 0.150162647

示例 4:幂函数

SELECT 
    id, 
    value, 
    POWER(value, 2) AS squared_value, 
    SQRT(value) AS square_root
FROM 
    numbers;

结果:

id value squared_value square_root
1 3.14 9.8596 1.772004515
2 -2.71 7.3441 NULL
3 1.41 1.9881 1.187434209

示例 5:随机函数

SELECT 
    id, 
    value, 
    RAND() AS random_value
FROM 
    numbers;

结果:

id value random_value
1 3.14 0.123456789
2 -2.71 0.987654321
3 1.41 0.543210987
全部评论

相关推荐

02-26 16:52
门头沟学院 Java
Lunarloop:董事长亲自到ssob来要IM项目的技术方案来了
点赞 评论 收藏
分享
神哥不得了:神哥来啦~1.建议不要包装,很容易问穿2.没日常也能找到暑期3.简历模板换一下,字体和版式看着好难受,而且最好压缩到一页,技术的倒数第2和3重复啦,项目建议换两个高质量的上去,如果时间够的话,八股就把高频top50的题目多巩固几遍,吃透,注意不要找假高频,这样绝对能找到暑期
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务