【Superset】看板筛选器的值传递到数据集sql中参与过滤

本文介绍如何在Apache Superset中利用看板筛选器的值动态创建SQL过滤条件,包括语法示例、注意事项及不支持的特性。特别关注了时间范围支持和筛选器默认值的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Superset 看板筛选器的值传递到数据集sql中参与过滤

一、语法

开始 - {{ "'" + "', '".join(- 和结束 - ) + "'" }}- 负责连接所有内容 - 这种结构允许使用多个值进行过滤。

filter_values('Column-Name') 是要查找过滤器值的实际函数。

二、示例

sql过滤条件 product_line in ('Classic Cars')  对应superset内置语法如下:
product_line in ({{ "'" + "', '".join(filter_values('product_line')) + "'" }})

其中第二个product_line为看板内筛选器值的列名

三、注意事项

  • 如果希望看板打开初始状态显示全部数据,需要将筛选器的默认值选择全部值;
  • 先通过固定过滤条件的方式配置数据集,使数据集可以【从源同步列】同步到所有结果列,再调整数据集的sql加上参数语句,添加参数后不要再进行【从源同步列】操作,再进行该操作会因为参数值为空,导致所有结果列被清空;

 

参考链接:Intro To Jinja Templating in Apache Superset™ | Preset

Superset是一个开源的数据可视化和探索平台,它提供了丰富的功能和灵活的扩展性。在Superset中,筛选器(Filter)是一种用于过滤数据的组件,可以帮助用户根据特定条件对数据进行筛选和分析。 如果你想进行Superset筛选器的二次开发,你可以按照以下步骤进行: 1. 了解Superset的架构和扩展机制:Superset是基于Python和Flask框架构建的,它使用了SQLAlchemy作为ORM(对象关系映射)工具,并且支持自定义插件和扩展。在开始二次开发之前,你需要熟悉Superset的基本架构和扩展机制。 2. 确定二次开发的目标:在开始二次开发之前,你需要明确你想要实现的功能或者改进的地方。例如,你可能想要添加新的筛选器类型、修改现有筛选器的行为,或者增加一些自定义的筛选器选项。 3. 编写自定义筛选器代码:根据你的目标,你可以编写自定义的筛选器代码。在Superset中,筛选器是通过继承`BaseFilter`类来实现的。你可以创建一个新的类,并重写相应的方法来实现你想要的功能。例如,你可以重写`apply`方法来定义筛选器的行为。 4. 注册自定义筛选器:完成自定义筛选器的编写后,你需要将其注册到Superset中。你可以在Superset的配置文件中添加相应的配置,将你的自定义筛选器Superset关联起来。 5. 测试和调试:在完成注册后,你可以重新启动Superset,并测试你的自定义筛选器是否按照预期工作。如果有问题,你可以进行调试并进行必要的修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值