Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

Count purchases after another purchase

Hello everybody,

 

I've got a table like:

id | timestamp | uid | tariff_name |

1    16.01.2017   id001  tariff_A

2    16.01.2017   id002  tariff_A

3    17.01.2017   id001  tariff_B

4    18.01.2017   id002  tariff_C

5    18.01.2017   id003  tariff_A

 

How can i count: all purchases for id001 made after purchasing tariff_A ? (1 purchase for example table)

                            sum of id that purchase smth after purchasing tariff_A? (2 (id001 & id002 id for example table)

3 REPLIES 3
BetterCallFrank
Resolver IV
Resolver IV

hi @Anonymous

you could do a calc column like this

CntLaterPurchases = 
CALCULATE(
  COUNTROWS(
    FILTER(
      table,
      AND( table[uid] = EARLIER(table[UID]), table[id] > EARLIER(table[id]) )
    )
  )
)

HTH,

Frank

Anonymous
Not applicable

hi @BetterCallFrank thanks for reply, i've got the following error: "EARLIER/EARLIEST refers to an earlier row context which doesn't exist", what can i do wrong?)

And what about if the first purchase was tariff_B, then tariff_A, and then tariff_C - i need to count only tariff_C - is it possible with your suggestion?

Hi @Anonymous

 

for your first question, try this measure:

Cnt Later Purchase of Customer:=
IF( HASONEVALUE(Table1[uid] ), VAR TheUID = VALUES( Table1[uid] ) VAR TheID = MAX( Table1[id] ) RETURN COUNTROWS( FILTER( ALL( Table1 ), AND( Table1[uid] = TheUID, Table1[id] > TheID ) ) ) )

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.