Tableau Prep 函数参考
Tableau Prep 计算函数允许您使用计算字段,通过数据源中已存在的数据来创建新数据。
数字函数
语法 | 描述 |
---|---|
ABS(number) | 返回给定数字的绝对值。 示例:
|
ACOS(number) | 返回给定数字的反余弦。结果以弧度表示。 示例:
|
ASIN(number) | 返回给定数字的反正弦。结果以弧度表示。 示例:
|
ATAN(number) | 返回给定数字的反正切。结果以弧度表示。 示例:
|
ATAN2(y number, x number) | 返回两个给定数字(x 和 y )的反正切。结果以弧度表示。示例:
|
CEILING(number ) | 将数字舍入为值相等或更大的最近整数。 示例:
|
COS(number) | 返回角度的余弦。以弧度为单位指定角度。 示例:
|
COT(angle) | 返回角度的余切。以弧度为单位指定角度。 示例:
|
DIV(integer1, integer2) | 返回将 integer1 除以 integer2 的除法运算的整数部分。示例:
|
EXP(number) | 返回 e 的给定数字次幂。 示例:
|
FLOOR(number) | 将数字舍入为值相等或更小的最近整数。 示例:
|
HEXBINX(number, number) | 将 x、y 坐标映射到最接近的六边形数据桶的 x 坐标。数据桶的边长为 1,因此,可能需要相应地缩放输入。 示例:
|
HEXBINY(number, number) | 将 x、y 坐标映射到最接近的六边形数据桶的 y 坐标。数据桶的边长为 1,因此,可能需要相应地缩放输入。 示例:
|
LN(number) | 返回数字的自然对数。如果数字小于或等于 0,则返回 Null。 示例:
|
LOG(number [, base] ) | 返回数字以给定底数为底的对数。如果省略了底数值,则使用底数 10。 示例:
|
MAX(number, number) | 返回两个参数(必须为相同类型)中的较大值。如果任一参数为 Null,则返回 Null。MAX 也可应用于聚合计算中的单个字段。示例:
|
MIN(number, number) | 返回两个参数(必须为相同类型)中的较小值。如果任一参数为 Null,则返回 Null。MIN 也可应用于聚合计算中的单个字段。示例:
|
PI( ) | 返回数字常量 pi:3.14159。 示例:
|
POWER(number, power) | 计算数字的指定次幂。 示例:
也可以使用 ^ 符号:
|
RADIANS(number) | 将给定数字从度数转换为弧度。 示例:
|
ROUND(number, [decimals]) | 将数字舍入为指定位数。decimals 参数指定要在最终结果中包含的小数位数精度。如果省略 decimals,则 number 舍入为最接近的整数。 示例: 此示例将每个 Sales 值舍入为整数:
|
SIGN(number) | 返回数字的符号:可能的返回值为:在数字为负时为 -1,在数字为零时为 0,在数字为正时为 1。 示例: 如果 profit 字段的平均值为负值,则
|
SIN(number) | 返回角度的正弦。以弧度为单位指定角度。 示例:
|
SQRT(number) | 返回数字的平方根。 示例:
|
SQUARE(number) | 返回数字的平方。 示例:
|
TAN(number ) | 返回角度的正切。以弧度为单位指定角度。 示例:
|
ZN(expression) | 如果表达式不为 Null,则返回该表达式,否则返回零。使用此函数可使用零值而不是 Null 值。 示例:
|
字符串函数
语法 | 描述 |
---|---|
ASCII(string) | 返回字符串的第一个字符的 ASCII 代码。 示例:
|
CHAR(number) | 返回通过 ASCII 代码编码的字符。 示例:
|
CONTAINS(string, substring) | 如果给定字符串包含指定子字符串,则返回 true。 示例:
|
ENDSWITH(string, substring) | 如果给定字符串以指定 substring 结尾,则返回 true。会忽略尾随空格。示例:
|
FIND(string, substring, [start]) | 返回 substring 在字符串中的索引位置,如果未找到子字符串,则返回 0。如果添加了可选参数 start,则函数会忽略在索引位置 start 之前出现的任何 substring 实例。字符串中第一个字符的位置为 1。示例:
|
FINDNTH(string, substring, occurrence) | 返回指定字符串内的第 n 个子字符串的位置,其中 n 由 occurrence 参数定义。 示例:
|
ISDATE(string) | 如果给定字符串为有效日期,则返回 true。 示例:
|
LEFT(string, number) | 返回字符串最左侧一定数量的字符。 示例:
|
LEN(string) | 返回字符串长度。 示例:
|
LOWER(string) | 返回字符串,其所有字符为小写。 示例:
|
LTRIM(string) | 返回移除了所有前导空格的字符串。 示例:
|
(MID(string, start, [length]) | 返回从索引位置 start 开始的字符串。字符串中第一个字符的位置为 1。如果添加了可选参数 length,则返回的字符串仅包含该数量的字符。 示例:
|
PROPER(string) | 转换文本字符串,使每个单词的第一个字母大写,其余字母小写。空格和非字母数字字符(如标点符号)也可用作分隔符。 示例:
|
REGEXP_EXTRACT(string, pattern) | 返回与正则表达式模式中的捕获组匹配的给定字符串的子字符串。正则表达式模式只需要一个捕获组 示例:
|
REGEXP_EXTRACT_NTH(string, pattern, index) | 使用正则表达式模式返回给定字符串的子字符串。子字符串匹配到第 n 个捕获组,其中 n 是给定的索引。 示例:
|
REGEXP_MATCH(string, pattern) | 如果提供的字符串的子字符串匹配正则表达式模式,则返回 true。 示例:
|
REGEXP_REPLACE(string, pattern, replacement) | 返回给定字符串的副本,其中匹配模式被替换字符串取代。 示例:
|
REPLACE(string, substring, replacement) | 在字符串中搜索子字符串,并将其替换为替代子字符串。如果未找到子字符串,则字符串保持不变。 示例:
|
RIGHT(string, number) | 返回字符串最右侧一定数量的字符。 示例:
|
RTRIM(string) | 返回移除了所有尾随空格的字符串。 示例:
|
SPACE(number) | 返回由指定数量的重复空格组成的字符串。 示例:
|
SPLIT(string, delimiter, token number)
| 返回字符串中的子字符串,由从字符串开头或结尾提取字符的分隔符确定。 示例:
|
STARTSWITH(string, substring) | 如果字符串以 substring 开头,则返回 true。会忽略前导空格。示例:
|
TRIM(string) | 返回移除了前导和尾随空格的字符串。 示例:
|
UPPER(string) | 返回字符串,其所有字符为大写。 示例:
|
聚合函数
语法 | 描述 |
---|---|
AVG(expression) | 返回表达式中所有值的平均值。AVG 只能用于数字字段。会忽略 Null 值 示例;
|
COUNT(expression) | 返回组中的项目数。不对 Null 值计数。 示例:
|
COUNTD(expression) | 返回组中不同项目的数量。不对 NULL 值计数。每个唯一值仅计算一次。 示例:
|
MEDIAN(expression) | 返回单个表达式的中位数。MEDIAN 只能用于数字字段。会忽略 Null 值。 示例:
|
PERCENTILE(expression, number) | 从给定表达式中返回与指定数字相对应的百分点值的聚合计算。数字的有效值为 0 到 1。PERCENTILE([表达式], 0.50) 将始终返回表达式中的中值。 示例:
|
STDEV(expression) | 返回表达式的样本标准差。 示例:
|
STDEVP(expression) | 返回表达式的总体标准差。 示例:
|
SUM(expression) | 返回表达式中所有值的总计。SUM 只能用于数字字段。会忽略 Null 值。 示例:
|
VAR(expression) | 基于群体样本返回给定表达式中所有值的统计方差。 示例:
|
VARP(expression) | 对整个群体返回给定表达式中所有值的统计方差。 示例:
|
ZN(expression) | 如果表达式不为 Null,则返回该表达式,否则返回零。使用此函数可使用零值而不是 Null 值。 示例:
|
类型转换函数
语法 | 描述 |
---|---|
DATE | 在给定数字、字符串或日期表达式的情况下返回日期。 示例:
请注意,引号是必需的。 |
DATETIME(expression) | 在给定数字、字符串或日期表达式的情况下返回日期时间。 示例:
请注意,引号是必需的。 |
FLOAT(expression) | 给定任何类型的表达式,返回一个浮点数。此函数需要未格式化的数字,这意味着排除逗号和其他符号。 示例:
|
INT(expression) | 给定表达式,返回一个整数。此函数将结果截断为最接近于 0 的整数。 示例:
|
MAKEDATE(year, month, day) | 返回一个由年、月和日构造的日期值。 示例:
|
MAKEDATETIME(date, time) | 在给定日期表达式和时间表达式的情况下返回日期和时间值。 示例:
|
MAKETIME(hour, minute, second) | 返回一个由小时数、分钟数和秒数构造的时间值。 示例:
|
STR(expression) | 给定表达式,返回字符串。 示例:
以字符串形式返回 Age 度量的所有值。 |
日期函数
语法 | 描述 |
---|---|
DATEADD(date_part, interval, date) | 向指定日期添加增量并返回新日期。增量由间隔和 date_part 定义。 示例:
|
DATEDIFF(date_part, start_date, end_date, [start_of_week]) | 返回从 end_date 中减去 start_date 后的两个日期之差。差以 date_part 为单位表示。如果省略 start_of_week,则周开始日由为数据源配置的开始日确定。 示例:
|
DATENAME(date_part, date, [start_of_week]) | 以字符串形式返回给定日期的一部分,其中该部分由 date_part 定义。如果省略 start_of_week,则周开始日由为数据源配置的开始日确定。 示例:
|
DATEPARSE(format, string) | 将字符串转换为指定格式的日期。 示例:
|
DATEPARTT(date_part, date, [start_of_week]) | 以整数形式返回给定日期的一部分,其中该部分由 date_part 定义。如果省略 start_of_week,则周开始日由为数据源配置的开始日确定。 示例:
|
DATETRUNC(date_part, date, [start_of_week]) | 按 date_part 指定的准确度截断指定日期,并返回新日期。如果省略 start_of_week,则周开始日由为数据源配置的开始日确定。 示例:
|
DAY(date) | 以整数的形式返回给定日期的天。 示例:
|
ISDATE(string) | 如果给定字符串为有效日期,则返回 true。 示例:
|
MONTH(date) | 以整数的形式返回给定日期的月份。 示例:
|
NOW() | 返回当前日期和时间。 示例:
|
TODAY() | 返回当前日期。 示例:
|
YEAR(date) | 以整数的形式返回给定日期的年份。 示例:
|
逻辑函数
语法 | 描述 |
---|---|
IFNULL(expr1, expr2) | 如果 <expr1> 不为 null,则返回该表达式,否则返回 <expr2> 。示例:
|
IIF(test, then, else, [unknown]) | 检查某个条件是否得到满足,如果为 TRUE 则返回一个值,如果为 FALSE 则返回另一个值,如果未知,则返回可选的第三个值或 NULL。 示例:
|
ISDATE(string) | 如果给定字符串为有效日期,则返回 true。 示例:
|
ISNULL(expression) | 如果表达式未包含有效数据 (Null ),则返回 true。示例:
|
ZN(expression) | 如果表达式不为 Null,则返回该表达式,否则返回零。使用此函数可使用零值而不是 Null 值。 示例:
|
分析函数
语法 | 描述 |
---|---|
LAST_VALUE(expression, [return_last_non-null_value]) | 返回给定表达式从分区中第一行到当前行的最后一个值。接受可选的第二个布尔参数以返回最后一个非 null 值。 示例:
|
LOOKUP(expression, [offset]) | 返回目标行(指定为与当前行的相对偏移)中给定表达式的值。如果无法确定目标行,则返回 NULL。
示例:
返回上一行中的 SALES 值。 |
NTILE(number) | 将选定分区中的行分配到指定数量的组或图块中。使用此函数,分配给 3 个图块的值集 (6,9,9,14) 将按升序分配给图块 (1,2,2,3)。 示例:
|
RANK() | 返回分区中当前行的标准竞争排名。为相同的值分配相同的排名。 示例:
|
RANK_DENSE() | 返回分区中当前行的密集排名。为相同的值分配相同的排名,但不会向数字序列中插入间距。 示例:
|
RANK_MODIFIED() | 返回分区中当前行的调整后竞争排名。为相同的值分配相同的排名。 示例:
|
RANK_PERCENTILE() | 返回分区中当前行的百分位排名。 示例:
|
ROW_NUMBER() | 为每一行返回唯一的连续行 ID。 示例:
|
RUNNING_AVG(expression) | 返回给定表达式从分区中第一行到当前行的运行平均值。 示例:
|
RUNNING_SUM(expression) | 返回给定表达式从分区中第一行到当前行的运行总计。 示例:
|
关键字
函数 | 描述 |
---|---|
AND | 对两个表达式执行逻辑合取运算 示例:
|
ASC | 为 ORDERBY 运算定义升序。示例
|
CASE | 查找第一个与 <expr > 匹配的 <value >,并返回对应的 <return >。示例:
|
DESC | 为 ORDERBY 运算定义降序。 示例:
|
ELSE | 测试一系列表达式,同时为第一个为 true 的<expr > 返回 <then > 值。 示例:
|
ELSEIF | 测试一系列表达式,同时为第一个为 true 的<expr > 返回 <then > 值。相当于在 ELSE 运算中放置一个 if 语句。示例:
|
END | 终止由相应指令引入的运算。 示例:
|
{ FIXED } | FIXED 详细级别表达式使用指定的维度计算值而不引用视图详细级别。 示例:
|
IF | 创建条件语句(IF 语句),并且允许您仅在条件为 True 时执行。示例:
|
NOT | 对一个表达式执行逻辑非运算。 示例:
|
OR | 对两个表达式执行逻辑析取运算。 示例:
|
{ ORDERBY } | 定义应用分析函数的顺序。使用可选的 asc | desc 参数指定每个字段的升序或降序。 示例:
|
{ PARTITION } | 将组定义为分析函数。ORDERBY 必须位于分区内。 示例:
|
THEN | 测试一系列表达式,同时为第一个为 true 的<expr > 返回 <then > 值。 示例:
|
WHEN | 查找第一个与 expr > 匹配的 <value >,并返回对应的 <return >。 示例:
|