I want to create a measure that sums sales figures based on customers who bought something this edition, but not last.
The edition is just a book edition and not relevant to a time/date. I would write the following in SQL:
SUM(a.Total) AS TotalSales
FROM SalesTable a
WHERE a.edition = "2017"
AND a.accountid NOT IN (SELECT accountid FROM SalesTable WHERE a.edition = "2016")
Any idea if this is posibble to do in a Measure?
Perhaps create a calculated column first that goes something like:
BoughtLastYear = IF(ISBLANK(SUMX(FILTER(TotalSales,TotalSales[accountid]=EARLIER(TotalSales[accountid])&&TotalSales[edition]=EARLIER(TotalSales[edition]-1)),TotalSales[Total)),"No","Yes")
Should create a column with Yes if they bought last year and No if they didn't. Then you could create a Measure like:
MyMeasure = CALCULATE(SUM(TotalSales[Total]),FILTER(TotalSales,BoughtLastYear="Yes"))
Proud to be a Datanaut!
Try this code:
_2017 =VAR _2016 = SELECTCOLUMNS(FILTER(SalesTable; SalesTable[EDITION] = 2016); "ACCOUNTID"; SalesTable[ACCOUNT_ID])VAR _2017 = SELECTCOLUMNS(FILTER(SalesTable; SalesTable[EDITION] = 2017); "ACCOUNTID"; SalesTable[ACCOUNT_ID])VAR _tbl = EXCEPT(_2017; _2016)RETURNSUMX(FILTER(SalesTable; SalesTable[ACCOUNT_ID] IN (_tbl)); SalesTable[TOTAL])
You may take a good look at the article below.
thanks, but that will only give you a total for the entire edition.
Join us in the third Triple A event!
It’s the start of a new Super User season! Learn all about the new Super Users and brand-new tiered recognition system.
Make sure you didn't miss any of the things that happened in the community in January!