千家信息网

postgresql——条件判断函数,系统函数等

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,一、条件判断函数:条件判断函数称为控制流程函数,postgresql中,进行条件判断的函数为:case。1、CASE expr WHEN v1 THEN r1 [WHEN v2 THEN r2] [E
千家信息网最后更新 2025年02月02日postgresql——条件判断函数,系统函数等

一、条件判断函数:

条件判断函数称为控制流程函数,postgresql中,进行条件判断的函数为:case。


1、CASE expr WHEN v1 THEN r1 [WHEN v2 THEN r2] [ELSE rn] END

该函数表示,如果expr值等于某个vn,就返回对应位置THEN后面的结果,如果与所有值都不相等,就返回ELSE后面的rn。


例子:使用case value when语句执行分支操作,如下:

testdb=# select case 2 when 1 then 'one' when 2 then 'two' else 'more' end;

case

------

two

(1 row)


2、CASE WHEN v1 THEN r1 [WHEN v2 THEN r2] ELSE rn END

该函数表示,某个vn值为TRUE时,返回对应位置THEN后面的结果,如果所有值都不为TRUE,就返回ELSE后的rn.


例子:使用case when语句执行分支操作,如:

testdb=# select case when 1<0 then 'true' else 'false' end;

case

-------

false

(1 row)



二、系统信息函数:

postgresql中的系统信息有数据库的版本号、当前用户名和连接数,系统字符集、最后一个自动生成的ID值等。


1、获取postgresql的版本号:version()

testdb=# select version();

version

----------------------------------------------------------------------------------------------------------

PostgreSQL 9.6.9 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16), 64-bit

(1 row)


2、获取用户名的函数:user和current_user


testdb=# select user,current_user;

current_user | current_user

--------------+--------------

pguser | pguser

(1 row)



三、加密和解密函数


1、加密函数:MD5(str)

MD5(str)为字符串算出了一个MD5 128比特检查和。该值以32为十六进制的二进制字符串的形式返回,若参数为null则会返回null。


例子:使用MD5函数加密字符串,如:

testdb=# select MD5 ('zhang');

md5

----------------------------------

d0cd2693b3506677e4c55e91d6365bff

(1 row)


2、加密函数:encode(str,pswd_str)

encode(str,pswd_str)使用pswd_str作为加密编码,加密str。常见的加密编码包括:base64,hex和escape。


例子:使用encode的加密字符串,如:

testdb=# select encode('secret','hex'),length(encode('secret','hex'));

encode | length

--------------+--------

736563726574 | 12

(1 row)



3、解密函数:decode(crypt_str,pswd_str)

decode(crypt_str,pswd_str)使用pswd_str作为密码,解密加密字符串crypt_str。crypt_str是由encode()返回的字符串。


例子:使用decode函数解密被encode加密字符串,如:

testdb=# select decode(encode('secret','hex'),'hex');

decode

----------------

\x736563726574

(1 row)


-------------------------------------------------

改变数据类型的函数:


cast(s ,AS type)将一个类型的值转换为另一个类型的值。


例子:使用cast函数进行数据类型的转换,如下:

testdb=# select cast(100 as char(2));

bpchar

--------

10

(1 row)


函数 加密 字符 字符串 例子 类型 条件 系统 数据 位置 信息 分支 版本 用户 用户名 结果 编码 语句 二进制 十六进制 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳软件开发维护 富锦市热力站自动化控制软件开发 运维怎么管理几千台服务器 戴尔联网服务器合格证图片 数据库什么软件开发 引力加速器服务器升级 软件开发需要资源包括 阿里云服务器远程桌面密码 手机服务器如何修改密码 个性化网络技术价目表 软件开发计算费用标准 网络安全个人信息保护视频 护苗网络安全活动开展小结 讲网络安全的论文 阿里云rds 复制数据库 全国网络安全和信息化法规 软件开发过程中生命周期 我的世界服务器空岛道路规划 全球网络技术大会近期 网络安全生态建设全方位 国际服怎么不显示国服的服务器 金山区特定网络技术转让比较 服务器程序保存在哪里 oa软件破解数据库版 行业软件开发定制 无锡市拿梦互联网络科技有限公司 网络安全素养手抄报标语 关于服务器炸了怎么办 本地与服务器数据同步 软件开发在求职时有哪些优势
0