Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Aggregating by condition

Two weeks ago I create a discussion about a aggregation for a dimension not included in fact table.

Today, I am searching a similar solution for a dataset with more complexity.

I have a Fact Table that concatenating three different data sources.

Using the same example from my previous post:

Fact Table:

   

FACT TABLE
Id_PersonSpecialtyAgeGenderCostAffected
1Pediatrics3Male10001
2 1Female 1
3Emergencies14Male20001
4 33Male 1
5Gynecology20Female30001
6 45Male 1
7Oncology67Male60001
8Geriatrics74Female5001

 

Fact table contain a concatenation of 3 differents data sources. Only one of them has Specialty (and Cost) information.

Dimension:

   

DIMENSION TABLE Specialty
DimensionCondition
Pediatrics<15
Gynecology>15 & Female
Geriatrics>65
OncologyALL
EmergenciesALL

I need a table with two expression that calculates Cost by Specialty and Affected People by Specialty (It is not a count of fact table, it is a record counter filtered by condition). So:   

   

Expected
SpecialtySum(Cost)Sum(Affected)
Pediatrics10003
Emergencies20008
Gynecology30002
Oncology60008
Geriatrics5002
Pediatrics30008
Emergencies
Pediatrics40005 (3+2)
Gynecology
Oncology65008
Geriatrics
Pediatrics45006 (3+2+2-1, this one is for a woman in Gyn & Ger)
Gynecology
Geriatrics

I try to get this result with a Sum(Cost) and pick(match(Affected)) but pick & match doesn't work fine in a table with Specialty.

How can I get these two expression correctly?

Thank you in advance.


0 Replies