文章目录
- 1 概述
- 2 集合表达式 expression
- 2.1 标识符 identifiers
- 2.2 修饰符 modifiers
- 2.2.1 多值用 ,隔开
- 2.2.2 引号区分大小写
- 2.2.3 搜索
- 2.3 运算符 operators
- 3 应用
1 概述
2 集合表达式 expression
基础数据准备:
MyTable:
Load * Inline [
Country, Year, Sales
A, 2020, 1
A, 2021, 2
B, 2021, 3
C, 2022, 4
];
2.1 标识符 identifiers
标识符 | 示例 | 解说 |
---|---|---|
$ | Sum ({$} Sales) | 显示当前选择项的记录,默认 |
1 | Sum ({1} Sales) | 显示所有记录,不符合的选择项赋 0 |
效果图:Sum ({$} Sales) = Sum(Sales),常用
效果图:Sum ({1} Sales)
2.2 修饰符 modifiers
2.2.1 多值用 ,隔开
-- 计算 Country in A,B 的 Sales 和
sum({< Country={A, B} >} Sales)
2.2.2 引号区分大小写
- 如果值包含 空格 或 特殊符号,则需将值加 引号
- 单引号
'
:区分大小写 - 双引号
"
:不区分大小写
- 单引号
- 日期格式必须带引号,并使用日期格式,如:
- <CREATE_DATE = {‘2022-02-02’}>
- <CREATE_DATE = {‘2022/02/02’}>
仅匹配 New Zealand
<Country = {'New Zealand'}>
匹配 New Zealand、NEW ZEALAND、new zealand
<Country = {"New Zealand"}>
2.2.3 搜索
1. 文本搜索
(1) '*': 任意数量的字符
(2) '?': 单个字符
(3) '^': 字符的开头
<Country = {"C*", "*land"}> 匹配以 C 或 land 开头的国家
2. 数字搜索
(1) >、>=、<、<=
<Year = {">2015"}> 匹配 2016 年及以后年份
3. 表达式搜索
<Customer = {"=Sum(Sales)>1000"}>
2.3 运算符 operators
运算符 | 说明 | 示例 |
---|---|---|
+ | 并集(or) | a + b = a、b 两个集合数据之和 |
- | 差集 | a - b = 在 a 中但是不在 b 中的数据 |
* | 交集 | a * b = 同时在 a、b 两个集合中的数据 |
/ |
3 应用
序号 | 说明 | 写法 |
---|---|---|
1 | 单条件单值:A国家的总销售额 | Sum({<Country = {'A'}>} Sales) |
2 | 单条件多值:A,C两个国家的总销售额 | Sum({<Country = {'A', 'C'}>} Sales) |
3 | 多条件 且:A国家在2021年的总销售额 | Sum({<Country = {'A'}, Year = {2021}>} Sales) 写法2: Sum({<Country = {'A'}> * <Year = {2021}>} Sales) |
4 | 多条件 或:A国家或2021年的总销售额 | Sum({<Country = {'A'}> + <Year = {2021}>} Sales) |
5 | 模糊匹配:A*(开头)、*A*(包含)、*A(结尾) | Sum({<Country = {'*A*'}>} Sales) |
6 | 除 A 之外 | Sum({<Country = - {'A'}>} Sales) 写法2: Sum({<Country={"*"} - {"A"}>} Sales) |
7 | 除 A、B 之外 | Sum({<Country = - {'A', 'B'}>} Sales) |
8 | 条件:显示 年月 >= 2017 | Sum({<Year = {">= 2017"} >} Sales) |