You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Apache Superset中基于两张表的数据生成图表?

在Apache Superset中从两张表取数据并制作图表的操作方法

方法一:通过SQL Lab编写关联查询生成数据集(通用方案)

这是适配所有数据源的通用方法,适合需要自定义关联逻辑的场景:

  • 进入Superset的SQL Lab模块,点击“New Query”新建查询
  • 编写SQL JOIN语句关联两张表,示例如下(以用户表users和订单表orders为例):
SELECT 
    u.user_id, 
    u.username, 
    o.order_id, 
    o.order_amount, 
    DATE_TRUNC('day', o.order_date) AS order_day
FROM users u
INNER JOIN orders o 
    ON u.user_id = o.user_id
WHERE o.order_date >= CURRENT_DATE - INTERVAL '30 days'
  • 运行查询验证数据准确性后,点击页面右上角的“Create Dataset”,将查询结果保存为新的数据集
  • 进入Charts模块,点击“Create Chart”,选择刚才创建的数据集,再挑选合适的图表类型(如柱状图、折线图)
  • 在图表配置界面,设置维度(如username、order_day)和指标(如SUM(order_amount)),完成后保存图表

方法二:通过数据集可视化关联(无需写SQL)

如果你的数据源(如PostgreSQL、MySQL)支持表关联,可以直接在数据集层面配置关系:

  • 先确保两张表都已添加为Superset数据集(进入Data > Datasets,点击“+ Dataset”添加)
  • 选择其中一个数据集,进入编辑页面,找到Relationships选项卡
  • 点击“Add Relationship”,选择要关联的另一张表,设置关联字段(如users.user_id = orders.user_id),保存关联配置
  • 返回数据集列表,点击该数据集的“Explore”按钮进入可视化界面
  • 在“Data”标签下,通过“Add/Remove Columns”添加另一张表的字段到数据集
  • 配置图表的维度和指标,选择合适的图表类型后保存

注意事项

  • 关联字段必须保证类型一致(如都是INT型ID),否则会出现数据匹配错误
  • 处理大表时,建议先通过WHERE子句过滤时间范围或其他条件,提升查询和可视化性能
  • 根据业务需求选择合适的JOIN类型(INNER JOIN、LEFT JOIN等),确保获取到符合预期的数据

内容的提问来源于stack exchange,提问作者Madhu Mohan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 05:18:34