出口外贸网站,东莞大岭山镇网站建设,个人做网站模版是否有人买,国外的素材网站意外发现openGauss兼容Oracle的几个条件表达式
最近工作中发现openGauss在兼容oracle模式下#xff0c;可以兼容常用的两个表达式#xff0c;因此就随手测试了一下。
查看数据库版本
[ommopenGauss ~]$ gsql -r
gsql ((openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2…意外发现openGauss兼容Oracle的几个条件表达式
最近工作中发现openGauss在兼容oracle模式下可以兼容常用的两个表达式因此就随手测试了一下。
查看数据库版本
[ommopenGauss ~]$ gsql -r
gsql ((openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-03-31 11:59:31 commit 0 last mr )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type help for help.openGauss# select version();version
-----------------------------------------------------------------------------------------------------------------------------------------------------------(openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-03-31 11:59:31 commit 0 last mr on x86_64-unknown-linux-gnu, compiled by g (GCC) 10.3.0, 64-bit
(1 row)
查看openGauss数据库的兼容模式
testdb# select datname,datcompatibility from pg_database;datname | datcompatibility
-----------------------------template1 | Atemplate0 | Atestdb | Apostgres | A
(4 rows)
decode(expr1, expr2, result1 ,…)
将表达式base_expr与后面的每个compare(n) 进行比较如果匹配返回相应的value(n)。如果没有发生匹配则返回default。
testdb# select id,name,address,decode(address,北京市,BJ,南京市,NJ,ZG) JC from t1;id | name | address | jc
-----------------------2 | zs2 | 北京市 | BJ4 | zs4 | | ZG1 | zs1 | 南京市 | NJ
(3 rows)
nvl(expr1, expr2)
如果value1为NULL则返回value2如果value1非NULL则返回value1。
testdb# select * from t1;id | name | address
-------------------2 | zs2 | 北京市4 | zs4 |
(2 rows)
testdb# select id,name,nvl(address,上海) from t1;id | name | nvl
------------------2 | zs2 | 北京市4 | zs4 | 上海
(2 rows)另外在查看官网文档的过程中发现在oracle中开发经常使用的nvl、nvl2、decode条件表达式也支持但是使用需要使用whale插件后才可以使用另外经过实测发现nvl、decode在当前openGauss 6.0.0也可以使用但是nvl2不支持。后来想安装whale插件测试但是也没有对应版本插件下载的地方只能下载源码自行编译这块感觉还是有点不方便。