首页 »
资源 » 此处
此页列示了 Envision 支持的运算符。
通用运算符
各类运算都支持的运算符如下:
==
: 等于(比较文本时区分大小写)!=
: 不等于(比较文本时区分大小写)<
: 小于>
: 大于<=
: 小于或等于>=
: 大于或等于
~~
:大小写不敏感、撇号也不敏感的等式(仅限于文本比较)!~
:求 ~~
的反向不等式
值的排序对所有 Envision 结构都一样(例如
order by
、
rank
或
median
):
- 数字按升序排序
- 日期按年代顺序排序
false < true
- 文本值按字母顺序排序(具体来说是按 Unicode 码位排序)
数值运算符
支持的数值运算符如下:
+
: 加-
: 减*
: 乘/
: 除/.
:防止除零的除法,a /. b
等同于 a /max(1, b)
mod
: 整除求余^
: 幂
有些数值运算符可用于日期:
date - date
:两个日期之间的天数date + number
和 date - number
:加/减天数
逻辑运算符
支持的逻辑运算符如下:
&
:逻辑与|
:逻辑或not
:逻辑非c ? a : b
:条件运算符 也称为 ternary if。请注意:a
、b
、c
会先单独求值。
分布运算符
有些特定的运算符对分布大有裨益(另请参阅
分布代数):
随机变量运算符
当分布刚好为随机变量时(质量等于 1,无负值),使用特定的运算符很有好处:
+*
:加卷积-^
:减卷积**
:乘卷积(Dirichlet 卷积)^*
:卷积幂
运算符优先权
下面的运算符按优先权递增次序列出。例如,由于
&
在
|
前面,因此
A | B & C
被解译为
A | (B &C)
。优先权相同的运算符从左至右分组:
A * B / C
即
(A * B) / C
。
^
, ^*
, >>
, <<
*
, /
, /.
和 mod
-
, +
, +*
, -*
, **
<
, <=
, ==
, !=
, ~~
, !~
, >
, >=
, ~~
和 !~
not
&
|