运算符是一个符号,通知编译器执行特定的数学或逻辑操作。Tableau有多个运算符用于创建计算字段和公式。
可用的运算符的详细信息和操作的顺序(优先级)如下:
运算符类型
常规运算符
算术运算符
关系运算符
逻辑运算符
常规运算符
下表显示了Tableau支持的常规运算符。这些运算符对数字,字符和日期数据类型起作用。
运算符 | 描述 | 例子 |
---|---|---|
+(addition) | 它添加两个数字。 它连接两个字符串。 它增加了日期的天数。 | 7 + 3 利润+销售额 \'abc\'+\'def\'=\'abcdef\' #April 15,2004#+ 15 = #April 30,2004# |
–(subtraction) | 我减去两个数字。 它从日期中减去天数。 | - (7 + 3)= -10 #April 16,2004# - 15 = #April 1,2004# |
算术运算符
下表显示了Tableau支持的算术运算符。 这些运算符仅对数字数据类型起作用。
运算符 | 描述 | 例子 |
---|---|---|
*(Multiplication) | 数值乘法 | 23 * 2 = 46 |
/(Division) | 数字部 | 45/2 = 22.5 |
%(modulo) | 数值分割提醒 | 13%2 = 1 |
^(power) | 提升到权力 | 2 ^ 3 = 8 |
比较运算符
下表显示了Tableau支持的比较运算符。这些运算符用于表达式。每个运算符比较两个数字,日期或字符串,并返回布尔值(TRUE或FALSE)。然而,布尔本身不能使用这些运算符进行比较。
运算符 | 描述 | 例子 |
---|---|---|
2 ^ 3 = 8... | 比较两个数字或两个字符串或两个日期相等。 返回布尔值TRUE,如果他们返回false。 | \'Hello\'=\'Hello\' 5 = 15/3 |
!=或(不等于) | 比较两个数字或两个字符串或两个日期不相等。 返回布尔值TRUE,如果他们返回false。 | \'好\'\'坏\' 18!= 37/2 |
> (大于) | 比较两个数字或两个字符串或两个日期,其中第一个参数大于秒。 如果是else返回false,则返回布尔值TRUE。 | [利润]> 20000 [Category]> \'Q\' [发货日期]> #April 1,2004# |
比较两个数字或两个字符串或两个日期,其中第一个参数小于秒。 如果是else返回false,则返回布尔值TRUE。 | [利润] [类别] [发货日期] |
逻辑运算符
下表显示了Tableau支持的逻辑运算符。这些运算符用于其结果为布尔值的表达式,给出输出为TRUE或FALSE。
运算符 | 描述 | 例子 |
---|---|---|
AND | 如果存在于AND运算符两侧的表达式或布尔值被计算为TRUE,则结果为TRUE。 否则结果为FALSE。 | [发货日期]> #April 1,2012#AND [Profit]> 10000 |
OR | 如果存在于AND运算符两侧的任何一个或两个表达式或布尔值被计算为TRUE,则结果为TRUE。 否则结果为FALSE。 | [发货日期]> #April 1,2012#OR [Profit]> 10000 |
NOT | 此运算符否定其后存在的表达式的布尔值。 | NOT [Ship Date]> #April 1,2012# |
运算符优先级
下表描述了求值运算符的顺序。顶行具有最高优先级。同一行上的运算符具有相同的优先级。如果两个运算符具有相同的优先级,则它们在公式中从左到右进行求值。也可以使用括号。内括号在外括号之前求值。
优先级 | 运算符 |
---|---|
1 | –(negate) |
2 | ^(power) |
3 | *,/,% |
4 | +, - |
5 | ==,>,=, |