Hi QuickSight Community,
I’m running into a cross-dataset filtering challenge and wanted to start a dedicated thread since I couldn’t find a complete solution in existing posts.
My Setup:
Let’s say I have two separate datasets that mirror a parent-child table relationship:
- Dataset 1 (Customer): One row per customer —
customer_id, customer attributes, etc. - Dataset 2 (Customer Reviews): Multiple rows per customer —
customer_id,review_type, review content, ratings, etc.
The relationship between them is 1:Many — one customer can have many reviews. If I were writing this in SQL, it would look like:
SELECT *
FROM customer c
JOIN customer_reviews cr ON c.customer_id = cr.customer_id
What I’m Trying to Do:
I have visuals on a single QuickSight sheet drawing from both datasets. I want to add a filter control for Review Type (a field that only exists in the (many) Customer Reviews dataset) and have that filter apply across all visuals on the sheet — including those sourced from the Customer dataset.
In other words, when a user selects a Review Type, I want:
- The Customer Reviews visuals to filter to matching reviews
- The Customer visuals to filter to only the customers who have reviews matching that selected type
The Core Challenge:
Review Type does not exist in the Customer dataset. The only shared key between the two datasets is customer_id. So I need the filter on one dataset to effectively pass a list of matching customer_id values to the other dataset — similar to the cross-dataset filtering challenge described in Cindy’s post above.
Has anyone found a working approach for this in QuickSight? Happy to hear solutions involving calculated fields, dataset joins, or any other workaround.
Thanks in advance!