使用 “版本 ”下拉列表切换服务。 了解有关导航的详细信息。
适用于:✅ Azure Data Explorer
创建存储函数或更改现有函数,并将其存储在数据库元数据中。
参数类型和 CSL 语句的规则与 let 语句的规则相同。
Permissions
此命令需要 Database User 权限才能创建新函数,Function Admin 权限才能更改现有函数。
Syntax
.create-or-alter
function [ with(propertyName=propertyValue [, ...])] functionName(参数){身体}
详细了解语法约定。
Parameters
| Name | 类型 | Required | Description |
|---|---|---|---|
| functionName | string |
✔️ | 要创建或更改的函数的名称。 |
| propertyName、propertyValue | string |
键值属性对的逗号分隔列表。 请参阅支持的属性。 | |
| parameters | string |
函数所需参数的逗号分隔列表。 每个参数的格式必须为 ParameterNameParameterDataType。 | |
| body | string |
✔️ | 零个或多个 let 语句,后跟有效的 CSL 表达式,该表达式在函数调用时求值。 |
Note
如果在数据库元数据中不存在具有所提供的 functionName 的函数,则该命令将创建一个新函数。 否则,将更改该函数。
支持的属性
| Name | 类型 | Description |
|---|---|---|
docstring |
string |
用于 UI 的函数的说明。 |
folder |
string |
用于 UI 函数分类的文件夹的名称。 |
view |
bool |
将此函数指定为存储视图。 存储视图可以参与搜索和联合*方案。 有关详细信息,请参阅视图。 |
skipvalidation |
bool |
确定是否对函数运行验证逻辑,如果函数无效,则让进程失败。 默认值为 false。 |
Example
以下示例使用说明 ()、文件夹创建 docstring 函数,并定义 MyLimit 参数。
.create-or-alter function with (docstring = 'Demo function with parameter', folder='MyFolder')
TestFunction(myLimit:int)
{ StormEvents | take myLimit}
Output
| Name | Parameters | Body | Folder | DocString |
|---|---|---|---|---|
| TestFunction | (myLimit:int) | { StormEvents | take myLimit } | MyFolder | 带参数的演示函数 |