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

Tableau自定义SQL中GROUP_CONCAT去重产生重复行问题求助

Tableau中GROUP_CONCAT导致重复空度量行的问题

我用Tableau做报表,通过自定义SQL从MongoDB BI连接器取数,遇到了GROUP_CONCAT不符合预期的问题:当拼接值显示为"Gerald,Simon"时,会出现一条维度完全一致但所有度量均为空的重复行,该行的拼接值是"Simon,Gerald"。

主文档属于Collection(占位名称),文档内的owner数组在BI连接器中被存储为Collection_owner表。为了性能考虑,我把查询拆成了两个逻辑表,通过维度1、2、3建立关联——如果在同一个查询中同时LEFT JOIN Collection_owner和Collection_pet,性能会极差,所以请不要聚焦拆分表的决策。

表1的SQL

SELECT `Collection`.`Dimension 1`,
`Collection`.`Dimension 2`,
`Collection`.`Dimension 3`,
`Collection`.`Dimension 4`,
`Collection`.`Dimension 5`,
`Collection`.`Measure 1`,
`Collection`.`Measure 2`,
`Collection`.`Measure 3`,
`Collection`.`Measure 4`,
GROUP_CONCAT(DISTINCT `Collection_owner`.`Dimension 6`) AS `Owner`

FROM `Collection`
LEFT JOIN `Collection_owner` ON (`Collection`.`id` = `Collection_owner`.`id`)

WHERE `Collection`.`date` >= [parameters for today's date]

GROUP BY `Collection`.`Dimension 1`, `Collection`.`Dimension 2`,`Collection`.`Dimension 3`

表2的SQL

SELECT `Collection`.`Dimension 1 (2)`,
`Collection`.`Dimension 2 (2)`,
`Collection`.`Dimension 3 (2)`,
`Collection_pet`.`Dimension1 (3)`,
`Collection_pet`.`Dimension2 (3)`,
`Collection_pet`.`Dimension3 (3)`

FROM `Collection`
LEFT JOIN `Collection_pet` ON (`Collection`.`id` = `Collection_pet`.`id`)

WHERE `Collection`.`date` >= [parameters for today's date]

我已经尝试过以下方法,但都无法解决问题:

  • 添加WHERE Measure 1 IS NOT NULL筛选条件
  • 在GROUP_CONCAT中加入ORDER BY子句
  • 拖拽Tableau的COUNT(Table)列,这些空度量行的COUNT值为0,但设置筛选条件为COUNT≥1后仍无效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 20:12:34