【发布时间】:2018-02-06 16:07:56
【问题描述】:
我有一张放着新闻文章的桌子。这些新闻文章有许多描述标题、图片等的栏目。一些列可以有多个值,例如类别可以设置为“运动”和“曲棍球”。
假设我有这张桌子:
articlekey | category
---------------------
article1 | sports, hockey
实际表格包含很多文章,所有文章只出现一次。我试图实现的是在这个表上过滤类别的两个值。为了能够做到这一点,我将它们分成了几行并生成了一个过滤表,如下所示:
articlekey | category
---------------------
article1 | sports
article1 | hockey
(顺便说一句。我们使用 Tableau 作为可视化/BI 工具,这就是我过滤的地方)
当我将这些加入表格并仅在“曲棍球”上过滤(包含)时,我会得到正确的结果,因为文章 1 只有一行的类别设置为“曲棍球”。
articlekey | category | category-filter
-----------------------------------------------
article1 | sports, hockey | sports <-- this will be excluded
article1 | sports, hockey | hockey <-- this is included
但是,如果我尝试排除“曲棍球”,则该文章将显示为“体育”类别,因为它会保留在“体育”类别的结果中。结果我希望它完全排除文章。
articlekey | category | category-filter
-----------------------------------------------
article1 | sports, hockey | sports <-- this is included, but should also be gone
article1 | sports, hockey | hockey <-- this will be excluded
如果可能,当我每列有多个值并且需要过滤(包括和排除)以便每篇文章只剩下一行时,我应该如何处理这样的数据。
【问题讨论】:
-
我正在使用 Redshift
标签: sql amazon-redshift tableau-api