函数调用
每个标量或聚合函数(内置或用户定义)的引用都符合以下语法:
在上述语法中, 表达式不能包含聚合函数。 其他表达规则请参见 “表达 ”。
ALL 或 DISTINCT 关键字只能用于聚合函数或基于聚合函数的自定义函数。
当在触发器主体内调用函数时, TABLE 关键字可以指定参数是触发器转换表。 在这种情况下,函数的相应参数必须使用 TABLE LIKE 子句定义。
表函数只能在子查询的 FROM 子句中引用。 有关引用表格函数的更多信息,请参阅 from子句的描述。
数组只能作为参数指定给以数组类型定义的函数。 数组元素指定一个标量值,因此当数组元素的数据类型可转换为函数定义中相应参数的数据类型时,数组元素可作为函数的参数。
当调用该函数时,每个参数的值都会通过存储分配分配给函数的相应参数。 根据宿主语言的调用约定,控制权将传递给外部函数。 当用户定义的聚合或标量函数执行完成后,使用存储分配将函数结果分配给结果数据类型。 有关分配规则的信息,请参阅分配和比较。
此外,字符型位数据参数不能作为未定义为字符型位数据的参数的输入。 同样,不能将不支持位数据的字符参数作为定义为支持位数据的字符参数的输入。
为了与其他SQL实现兼容, UNIQUE 可以作为 DISTINCT 聚合函数中的同义词。
