当前位置: 首页 > news >正文

postgresql常用函数-数学函数

postgresql常用函数

  • 简介
  • 数学函数
    • 算术运算符
    • 绝对值
    • 取整函数
    • 乘方与开方
    • 指数与对数
    • 整数商和余数
    • 弧度与角度
    • 常量 π
    • 符号函数
    • 生成随机数

简介

函数(function)是一些预定义好的代码模块,可以将输入进行计算和处理,最终输出一个
结果值。PostgreSQL 函数可以分为两类:标量函数(scalar function)和聚合函数(aggregation
function)。标量函数针对每个输入都会返回相应的结果,聚合函数针对一组输入汇总出一个结

常见的系统函数分为以
下类别:数学函数、字符函数、日期时间函数以及类型转换函数
。除了可以使用这些系统内置的
函数之外,PostgreSQL 也支持创建自定义的函数(UDF

数学函数

算术运算符

PostgreSQL 支持以下算术运算符:
在这里插入图片描述
在这里插入图片描述

绝对值

-- abs(x)函数用于计算 x 的绝对值
select abs(-17.4);

在这里插入图片描述

取整函数

ceil(dp)/ceiling(dp)函数用于计算大于或等于 dp 的最小整数;floor(dp)函数用于计算小于或
等于 dp 的最大整数;round(dp)函数四舍五入为整数;trunc(dp)函数向零取整

select ceil(-42.8), floor(-42.8), round(12.45), trunc(12.8);

在这里插入图片描述
另外,round(dp, s)函数四舍五入到 s 位小数;trunc(dp, s)函数截断到 s 位小数。

乘方与开方

power(a, b)函数计算 ab 次方;sqrt(dp)函数计算 dp 的平方根;cbrt(dp)函数计算 dp 的立方根
在这里插入图片描述

指数与对数

exp(dp)函数计算以自然常数 e 为底的指数,ln(dp)函数计算以自然常数 e 为底数的对数,
log(dp)/log10(dp)函数计算以 10 为底的对数,log(b, x)函数计算以 b 为底的对数。
在这里插入图片描述

整数商和余数

div(y, x)函数计算 y 除以 x 的整数商,mod(y, x)函数计算 y 除以 x 的余数。
在这里插入图片描述

弧度与角度

degrees(dp)函数用于将弧度转为角度,radians(dp)函数用于将角度转弧度。
在这里插入图片描述

常量 π

select pi();

在这里插入图片描述

符号函数

select sign(-9.7); 

sign(dp)函数返回参数的正负号,可能的结果为-1、0、+1。
在这里插入图片描述

生成随机数

PostgreSQL 提供了用于返回一个随机数的函数 random()。
random()返回一个大于等于 0 小于 1 的随机数,类型为双精度浮点数。

select random();  

在这里插入图片描述
setseed(dp)函数可以为随后一次运行的 random()函数设置种子数,范围:-1.0 <= dp <= 1.0

select setseed(0);
select random(); 

相同的种子可以得到相同的随机数,用于重现结果。

http://www.lryc.cn/news/141837.html

相关文章:

  • 【排序】快速排序(前后指针法)—— 考的最少的一种算法
  • 软考:中级软件设计师:关系代数:中级软件设计师:关系代数,规范化理论函数依赖,它的价值和用途,键,范式,模式分解
  • openCV实战-系列教程2:阈值与平滑处理(图像阈值/图像平滑处理/高斯/中值滤波)、源码解读
  • C语言第五章-循环结构练习
  • Echarts面积图2.0(范围绘制)
  • flink checkpoint时exact-one模式和atleastone模式的区别
  • QEMU 仿真RISC-V freeRTOS 程序
  • 用大白话来讲讲多线程的知识架构
  • 【uniapp】微信小程序 , 海报轮播图弹窗,点击海报保存到本地,长按海报图片分享,收藏或保存
  • SpringBoot与前端交互遇到的一些问题
  • Maven介绍与配置+IDEA集成Maven+使用Maven命令
  • 毕业设计题目源码-毕业论文参考
  • SSH报错-Terminal shell path: C:\WINDOWS\System32\cmd.exe 此时不应有
  • Docker 轻量级可视化工具Portainer
  • 站点平台技术架构
  • 一个以太坊合约的漏洞分析-重入攻击
  • 测试先行:探索测试驱动开发的深层价值
  • 如何用Dockerfile部署LAMP架构
  • 基于量子粒子群算法(QPSO)优化LSTM的风电、负荷等时间序列预测算法(Matlab代码实现)
  • SQL Server软件安装包分享(附安装教程)
  • 基于Django的博客管理系统
  • windows系统依赖环境一键安装
  • centos7安装nacos
  • 【python】python智能停车场数据分析(代码+数据集)【独一无二】
  • 如何使用Redis来防止穿透、击穿和雪崩问题
  • 以getPositionList为例,查找接口函数定义及接口数据格式定义
  • 一生一芯8——在github上添加ssh key
  • 2023年6月电子学会Python等级考试试卷(一级)答案解析
  • ppt如何转pdf文档?用这个方法可将ppt转pdf
  • Hope.money:新兴DeFi项目如何重新定义稳定币生态的未来?