常用PostgreSQL函数

PostgreSQL常用函数介绍

1.数学函数
	abs() 返回绝对值
	pi() 返回圆周率值
	sqrt() 返回非负数的二次方根
	mod(x,y) 返回x被y除(x/y)后的余数,x也可以为小数
	
	ceil(x) 或 ceiling(x) 返回不小于x最小整数值
	floor(x) 返回不大于x的最大整数值
	
	round(x) 返回最接近于x的整数
	round(x,y) 返回最接近于x的数,其值保留小数点后y位,若y为负值,则保留小数点左边y位

	sign(x) x为负,零,正时返回结果依次为:-1,0,1

	pow(x,y) 或 power(x,y) 返回x的y次乘方的结果值
	exp(x) 返回e的x乘方后的值
	log(x)	返回x的自然对数

	radians(90) 将角度值90转变为弧度值1.5707...
	degrees(pi()) 将弧度值转变为角度值180

	sin()
	asin()
	cos()
	acos()
	tan()
	atan()
	cot()
  
2.字符串函数
	char_length(str) 返回str包含字符的个数
	length(str) 返回字符串的字节长度,使用utf8编码时,一个汉字占三个字节,一个数字或字母占一个字节。

	concat(s1,s2,...,sn) 把这些字符串连接起来。当有null时忽略,当有任一二进制字符串,结果为一个二进制字符串。
	concat_ws(x,s1,s2,...,sn) 第一个参数x是其他参数的分隔符。

	left(s,n) 返回字符串s最左边n个字符
	right(s,n) 返回字符串s最右边n个字符

	lpad(s1,len,s2):返回长度len的s1字符串,若s1长于len,则截取前len个;否则,在左边填充s2至长度为len.
	rpad(s1,len,s2):返回长度len的s1字符串,若s1长于len,则截取前len个;否则,在右边填充s2至长度为len.

	ltrim(s): 字符串左边空格被删除
	rtrim(s):字符串右边空格被删除
	trim(s):字符串左右两边边空格被删除
	trim(s1 from s) : 删除字符串s两端所有的子字符串s1
	
	repeat(s,n): 返回重复n次s组成的字符串。
	replace(s,s1,s2) : 使用s2替换s中的s1

	substring(s,n,len):返回起始于n位置的len个字符组成的字符串
	position(str1 in str): 返回子字符串str1在str中的开始位置

	reverse(s): 将字符串s反转
	
3.日期和时间函数
	current_date
	current_time 带时区
	localtime 不带时区
	current_timestampnow()
	localtimestamp

	extract(类型 from 日期) : 从日期中提取某类型的时间值。类型有(day,month,year,doy[一年中的第几天],dow[一周中的星期几],quarter[几季度])
	
	日期和时间的运算操作:
		date'2019-09-28' + integer'10'  : 2019-10-08
		date'2019-09-28' + interval '3 hour'  : 2019-09-28 03:00:00
		date'2019-09-28' + time '06:00'  : 2019-09-28 06:00:00
		date '2019-11-01' - date '2019-09-10' : 52
		50 * interval '2 second' : 00:01:40
		interval '1 hour' / integer '2' : 00:30:00 
	
	
4.条件判断函数

条件判断函数亦称控制流函数,根据满足的条件而执行相应的流程。

	1.表达式结果等于某个条件
	 case 表达式 when 条件1 then 对应值1 [when 条件2 then 对应值2] else 没有匹配到时的对应值 end

	2.当条件为true时执行对应的流程
	case when 条件1 then 对应值1 [when 条件2 then 对应值2] else 没有匹配到时的对应值 end
5.系统信息函数
	version()
	user
	current_user
6.加密函数
	md5(str): 为str字符串算出一个MD5 128比特检查和。
	
	encode()
	decode()
7.改变数据类型的函数
	cast(x as type) : 将一个类型的值转换为另一个类型的值。
  • 1
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值