历史版本13 :数据列常用过滤条件 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
目录:
1. 概述编辑
1.1 应用场景
某些场景下,我们希望对数据列进行过滤,按照特定值去模糊查询,如下图所示:
1.2 解决思路
我们可以使用nofilter、left()函数、过滤条件(and、or)来进行数据过滤,下面分别介绍。
2. 不同数据列过滤方式编辑
2.1 过滤条件中使用 nofilter
nofilter 的含义就是不过滤,通常用于某个条件不成立的情况下过滤条件无效。
注:nofilter 表示不过滤,if(len($area)==0,nofilter,$area)表示参数 area 为空,就不过滤,若不为空则以参数值进行过滤。
2.2 对某一列进行处理后再过滤
通常用于某列值比较特殊,截取该列的值中的某一部分进行过滤的情况。
比如我们要设置过滤部门 ID 前两位为'11',可以进行如下设置。
注:left() 函数意为从左边开始截取,在公式中可以直接使用列名,如上即为:部门 ID
2.3 过滤条件的和与或
通常用于根据不同的情况使用不同的过滤条件。
如下例子所示,要求货主地区来自于area,当货主省份为 province 时用货主省份过滤,当货主省城市为 city 是用货主城市来过滤。
长按 Ctrl 后选中任意两个过滤条件,这时可以看到添加括号从灰化变成了可用,这时点击添加括号,即可合并这两个过滤条件,如下图所示:
点击添加括号后,即可得到如下图所示的书写方式,这时点击去掉括号,即可变回原来的过滤条件书写方式。
注:只有当过滤条件的总数大于 2 条的时候,例如and 条件1 and( 条件2 or 条件3),添加括号才有效。
3. 示例编辑
3.1 模板设计
3.1.1 数据准备
此处使用nofilter来过滤数据列。
新建数据查询ds1,SQL语句如下:SELECT * FROM 订单 where 货主地区= '${area}' or 货主省份 = '${province}',如下图所示:
3.1.2 模板设计
3.2 效果预览
1)PC端
保存模板,点击分页预览,如下图所示:
2)移动端