数字和时间是做数据分析时经常要进行操作运算的两类数据类型,在M语言中可以使用如下符合对其进行操作:
数字运算操作符
操作符 | 功能 |
---|---|
+ | 加号 |
- | 减号 |
* | 乘号 |
/ | 除号 |
+x | 一元正号 |
-x | 否定号 |
比较操作符
比较操作符可以用语数字之间的相互比较,也可以用于时间的比较,还可以用于逻辑值的比较。
操作符 | 功能 |
---|---|
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
= | 等于 |
<> | 不等于 |
时间操作符
M语言中与时间相关的数据类型有四种种
- 日期 #date:年,月,日
- 时间 #time:小时,分钟,秒
- 日期时间 #datetime:年,月,日,小时,分钟,秒
- 日期时间以及时区 #datetimezone:年,月,日,小时,分钟,秒,与UTC时间偏移的小时,与UTC时间偏移的分钟
- 时长#duration:天,小时,分钟,秒
日期操作
操作符 | X代表的数据类型 | Y代表的数据类型 | 意义 |
---|---|---|---|
X+Y | 时间 #time | 时长 #duration | 获得递延时间 |
X+Y | 时长 #duration | 时间 #time | 获得递延时间 |
X-Y | 时间 #time | 时长 #duration | 获得递减时间 |
X-Y | 时长 #duration | 时间 #time | 获得递减时间 |
X&Y | 日期 #date | 时间 #time | 获得日期时间 |
日期时间操作
操作符 | X代表的数据类型 | Y代表的数据类型 | 意义 |
---|---|---|---|
X+Y | 日期时间 #datetime | 时长 #duration | 获得递延时间 |
X+Y | 时长 #duration | 日期时间 #datetime | 获得递延时间 |
X-Y | 日期时间 #datetime | 时长 #duration | 获得递减时间 |
X-Y | 日期时间 #datetime | 日期时间 #datetime | 获得时间间隔 |
时长操作
操作符 | X代表的数据类型 | Y代表的数据类型 | 意义 |
---|---|---|---|
X+Y | 日期时间 #datetime | 时长 #duration | 获得递延时间 |
X+Y | 时长 #duration | 日期时间 #datetime | 获得递延时间 |
X+Y | 时长 #duration | 时长 #duration | 获得时长之和 |
X-Y | 日期时间 #datetime | 时长 #duration | 获得递减时间 |
X-Y | 日期时间 #datetime | 日期时间 #datetime | 获得时间间隔 |
X-Y | 时长 #duration | 时长 #duration | 获得时长之差 |
X*Y | 时长 #duration | 数字 number | 获得时长倍数 |
X*Y | 数字 number | 时长 #duration | 获得时长倍数 |
X/Y | 时长 #duration | 数字 number | 获得时长分数 |
时区时间操作
操作符 | X代表的数据类型 | Y代表的数据类型 | 意义 |
---|---|---|---|
X+Y | 时区 #datetimezone | 时长 #duration | 获得递延时区时间 |
X+Y | 时长 #duration | 时区 #datetimezone | 获得递延时区时间 |
X-Y | 时区 #datetimezone | 时长 #duration | 获得递减时区时间 |
X-Y | 时长 #duration | 时区 #datetimezone | 获得递减时区时间 |