表达式

表达式指定一个值,可以采用多种形式,例如仅包含常数或列名的简单值,也可以包含运算符、其他表达式等更复杂的表达式。

授权

使用某些表达式,例如标量全选序列引用 、全局变量 函数调用 ,需要获得相应的授权。 对于这些物品,以下定义的特权集必须包含以下授权:

  • 铸造规格。 在铸造规格中引用用户自定义类型的授权。 有关授权注意事项的信息,请参阅 CAST规范
  • 函数调用。 执行功能的授权。 有关如何选择特定功能和授权注意事项的信息,请参阅功能解析
  • scalar-fullselect。 有关授权方面的信息,请参阅授权查询
  • 序列号。 指定序列的 USAGE 权限、序列的所有权、DATAACCESS 权限或 SYSADM 权限。 例如,序列号需要序列号授权。
  • 全局变量。 对指定全局变量的读取权限、全局变量的所有权、数据访问权限或系统管理员权限。

权限设置:

如果语句嵌入到应用程序中,权限集就是计划或软件包所有者所拥有的权限。 如果语句是动态准备的,则权限集是进程的每个授权ID所拥有的权限集的并集。

语法

表达形式如下:

阅读语法图跳过可视化语法图操作员+-函数调用1( 表达式)constant列名变量special-register全选2特定时区表达式标注时长3case-expression4cast-specification5XMLCAST规范6数组元素说明7数组构造函数8OLAP 规范9换行表达式10sequence-reference11
注意:

运算符:

阅读语法图跳过可视化语法图CONCAT||/*+-

标签持续时间:

阅读语法图跳过可视化语法图函数调用1( 表达式)constant列名变量YEARYEARSMONTHMONTHSDAYDAYSHOURHOURSMINUTEMINUTESSECONDSECONDSMICROSECONDMICROSECONDS
注意:
  • 1 必须是标量函数。

不带运算符的表达式

如果没有使用运算符,则表达式的结果为指定值。 以下每个示例都是基于名为“工资”的列来指定值的表达式:

  SALARY     :SALARY     'SALARY'    MAX(SALARY)