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
相关产品推荐
相关产品推荐

