返回首页

gbase数据、南大通用产品文档:GBase8aCASE

更新日期:2024年09月11日

语法
CASE value WHEN [compare-value] THEN result [WHEN [compare-value]
THEN result ...] [ELSE result] END
函数说明
逐一匹配,当满足value=compare-value 时,返回对应的result,如果未找到匹配
项,则返回ELSE 后的result。如果没有ELSE 子句,默认返回NULL。
如果条件中compare-value 有重叠,即value 值满足多个compare-value 条件时,
只返回第一个满足的值。
语法
CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...]
[ELSE result] END
函数说明
逐一判断,
当condition 为TRUE 时,
返回对应的result,
如果condition 全为FALSE,
则返回ELSE 后的result。如果没有ELSE 子句,默认返回NULL。
一个CASE 表达式的默认返回值类型是所有返回值的相容集合类型,具体情况视
其所在语境而定:
如用在字符串语境中,则返回结果为字符串;
如用在数字语境中,则返回结果为十进制值的实数值或整数值。
示例
示例1:value=compare-value,返回对应的result 值。
gbase> SELECT CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE
'more' END FROM dual;
+-------------------------------------------------------------+
| CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END
|
+-------------------------------------------------------------+
| one
|
+-------------------------------------------------------------+
1 row in set
示例2:condition 为TRUE 时,返回对应的result 值。

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
675
gbase> SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END FROM
dual;
+---------------------------------------------+
| CASE WHEN 1>0 THEN 'true' ELSE 'false' END
|
+---------------------------------------------+
| true
|
+---------------------------------------------+
1 row in set
示例3:value 不等于compare-value,返回值为NULL。
gbase> SELECT CASE 'c' WHEN 'a' THEN 1 WHEN 'b' THEN 2 END
FROM dual;
+-----------------------------------------------+
| CASE 'c' WHEN 'a' THEN 1 WHEN 'b' THEN 2 END
|
+-----------------------------------------------+
|
NULL |
+-----------------------------------------------+
1 row in set

snap_seq 是一个递增的sequence,其为WDR snapshot 提供快照的ID。


GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 351 -
使用 onmode 实用程序变更数据库服务器操作方式,并在共享内容、会话、事务、参数和
分段上执行其他各种操作。
这些主题展示了如何使用 onmode 选项。如果不使用选项,那么数据库服务器返回用法语
句。
在 UNIX™ 上,必须是用户 root 或用户 gbasedbt 才能执行该 onmode 实用程序。
在 Windows™ 上,必须是 Gbasedbt-Admin 群组成员或管理员群组成员才能执行 onmode
实用程序。
有关onmode -b 命令的信息请参阅 GBase 8s 迁移指南 中的 onmode -b 命令的语法 。
除了 onmode -b 、onmode -BC 和 onmode -R.,所有的 onmode 命令选项都有等同的 SQL
管理 API 命令 字符串。