我有一个包含多个视图的Tableau仪表板,其中一个用作标题表的类型。我在很大程度上基于找到的信息添加了here
我的工作簿有一个主数据源,一个SQL Server视图,我创建了计算字段来确定字段的最小和最大日期范围" StartDate"对于该视图中的数据。最大日期计算在此处显示以供参考,我也做同样的最小值。
STR(DATEPART('month', MAX([StartDate]))) + '/' + STR(DATEPART('day', MAX([StartDate]))) + '/' + STR(DATEPART('year', MAX([StartDate])))
我还希望有一个基于" StartDate"的过滤器。使用滑块,以便您可以根据更改的日期范围过滤仪表板上显示的所有数据。
所有这些都有效。我唯一的问题是,当我更改过滤器时,它会更改标题。我希望可用日期范围的标题基本上代表数据源中的所有日期范围,而不仅仅是新过滤的仪表板上显示的内容。
我发现有些文章建议从相同数据的辅助数据源中删除它,我尝试通过添加执行min()max()查询的辅助查询来实现
SELECT min(StartDate) as DateStart,
max(StartDate) as DateEnd
FROM [dbo].[MyDataTable]
但是我必须将两个数据源连接在一起,这是不可能的,因为辅助视图只包含最小和最大日期,因此唯一要加入的是主数据源中的StartDate,它将限制我们的数据再次出现。
我希望包含标题的数据表基本上与仪表板中对过滤器的更改断开连接。
有什么建议吗?
答案 0 :(得分:1)
问题是,当你运行该计算(获得最大开始日期)时,你已经过滤了这些值。
您可以做的一件事是不将过滤器(基于您的滑块)应用到生成标题的工作表(我知道您将此标题作为单独的表格,如果没有,请执行此操作)。因此,生成标题的工作表将包含所有数据以获取max(startdate)
我相信您正在做的是将日期过滤器应用于所有工作表。如果您仍希望将过滤器应用于多个工作表,则可以选择要应用的过滤器(将过滤器应用于选定的工作表)。
希望这有帮助