特殊函数
这些函数可执行各种特殊操作。您可以将其运用到所有 数据类型 中。
Coalesce
Coalesce(v1,v2,v3,…,vn)
: Returns the first non-null value.
重要
Values passed to the Coalesce function must all be the same type (all string, all numeric, or all spatial).
Example
Coalesce(null, "oranges", "apples", null, "grapes")
returns oranges.
Coalesce(oranges, apples, grapes)
returns an error.
Coalesce("1", "2", "3")
returns 1.
Coalesce(null, null, null)
returns Null.
Coalesce(toDateTime("apples"), toDateTime(1))
returns 1899-12-31 00:00:00 because toDateTime("apples") returns null.
EscapeXMLMetacharacters
EscapeXMLMetacharacters(String)
:使用 XML 元字符的转义版本来替换这些字符。有 5 个字符可转义。
字符 | 转义版本 |
---|---|
" | " |
' | ' |
< | < |
> | > |
& | & |
示例
EscapeXMLMetacharacters("2>1&1<2")
返回 2>1&1<2
GetVal
GetVal(index, v0,...vn)
:返回索引(从 0 开始)对应的 (v0, ..., vn) 值。
GetEnvironmentVariable
GetEnvironmentVariable(Name)
:返回 Name 中指定的环境变量。要获取环境变量列表,请在计算机上转至
控制面板
>
系统和安全
>
系统
>
高级系统设置
>
环境变量
。您将看到系统变量列表。您可以使用此列表中的任何值。
Server 支持
Alteryx 不支持保存至 Server 的应用程序中的
GetEnvironmentVariable
。
示例
GetEnvironmentVariable(CommonProgramFiles)
返回 C:\Program Files\Common Files。
GetEnvironmentVariable(OS)
返回 Windows_NT。
Message
Message(messageType, message, returnValue)
:与条件语句一起用于将消息输出到消息日志,并在满足条件时使用指定值更新列数据。
消息类型和文本显示在 结果 窗口中。如果启用了日志记录,则输出日志文件也类似于此信息。如需了解详情,请访问 结果窗口 和 输出日志文件 。
参数
messageType
:与消息类型对应的数字:
1:消息
2:警告
3: 错误
5:转换错误(字段转换错误)
8:文件(输入)
9:文件(输出)
message
:用引号括起来的字符串表示的消息文本。
returnValue
:要输出到列数据的值。这可以是数值(例如 0)、null 或用引号括起来的文本字符串(例如“False”)。
示例
在本示例中,如果给定的日期时间值不包含有效的时间数据,则在条件表达式中使用 Message 函数输出字段转换错误消息,并用值“False”更新列数据。
If [Hour] = "0" and [Minutes] = "0" then Message(5, "Invalid time in DateTime", "False") Else "True" Endif
NULL
NULL()
:返回 Null 值。
RangeMedian
RangeMedian(...)
:计算一系列汇总范围的中位数。如需了解详情,请访问
范围中位数
。
ReadRegistryString
ReadRegistryString(Key, ValueName, DefaultValue=")
:返回注册表中的值。
Soundex
Soundex(String)
:返回字符串的 Soundex 码。Soundex 基于字符串中的第一个字符加上基于以下项的 3 个字符创建代码:
字符 | Soundex |
---|---|
非字母字符(数字和标点符号) | -1 |
a、e、i、o、u、y、h 和 w | 除非它是字符串中的第一个字符,否则将被忽略。 |
b、f、p 和 v | 1 |
c、g、j、k、q、s、x 和 z | 2 |
d 和 t | 3 |
l | 4 |
m 和 n | 5 |
r | 6 |
示例
如果生成的代码只有 2 个或 3 个字符长,Soundex 将使用零将代码填充为 4 个字符。例如,在名字 Lauren 中,只有 L、r 和 n 被转换 (Lrn),因此生成的 Soundex 码为 L650。
如果生成的代码长度超过 4 个字符,则第四个字符之后的所有字符都将予以忽略。例如,在名字 Patrick 中,P、t、r、c 和 k 可以被转换为 (Ptrck),但生成的 Soundex 码只有 4 个字符:P362。
Soundex_Digits
Soundex_Digits(String)
:返回前 4 个数字;
或者
,如果无,则返回 Soundex 码。
如果字符串中有数字,则返回前 4 位数字。
如果没有数字,则返回 Soundex 代码。
字符串示例 | Soundex_Digits |
---|---|
3825 Iris | 3825 |
55555 Main | 5555 |
14L Broadway | 14 |
Commerce Street | C562 |
L Street | L236 |
TOPNIDX
TOPNIDX(N, v0, v1, ..., vn)
:在按降序对索引字段(v0 到 vn)进行排序时,从最大值返回第 N 个从 0 开始的原始索引位置。Null 值将予以忽略,N 应小于非 null 参数。当 N==0 时,等同于 MaxIdx(...)。
N
- 指定从最大索引字段开始算的第 N 位v0, v1, ..., vn
是索引字段
示例
TOPNIDX(1, [IndexedField1], 5, 7)
返回...
0(如果 5<
[IndexedField1]
<7)1(如果
[IndexedField1]
< 5 或[IndexedField1]
是 null)2 如果
[IndexedField1]
> 7
UrlEncode
UrlEncode(String)
:将 UTF-16 字符串编码适用于原始引擎和 AMP 的 Web 合法 URL。
示例
C:\temp\Alteryx URL Encode
返回 C:/temp/Alteryx%20URL%20Encode