Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hello Community,
I would like to know if possible to convert this sql query to dax query.
here is the query:
SELECT * ,
Lag(User, 1,'') OVER( PARTITION BY id
ORDER BY Date ASC) AS UserTarget
FROM table
my table is:
| id | date | activity | target act | user | targetuser |
| 1 | 10-Oct | eat | drink | a | b |
| 1 | 10-Nov | drink | sleep | b | c |
| 1 | 12-Dec | sleep | xxxx | c | xxxx |
| 2 | 10-Oct | eat | dink | a | b |
| 2 | 10-Nov | drink | sleep | b | c |
| 2 | 12-Dec | sleep | xxxxx | c | xxxxx |
Solved! Go to Solution.
UserTarget =
MAXX(
TOPN(
1,
FILTER(
TBL,
TBL[id] = EARLIER( TBL[id] )
&& TBL[date] > EARLIER( TBL[date] )
),
TBL[date], ASC
),
TBL[user]
)
| Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
UserTarget =
MAXX(
TOPN(
1,
FILTER(
TBL,
TBL[id] = EARLIER( TBL[id] )
&& TBL[date] > EARLIER( TBL[date] )
),
TBL[date], ASC
),
TBL[user]
)
| Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
| User | Count |
|---|---|
| 58 | |
| 43 | |
| 41 | |
| 23 | |
| 17 |
| User | Count |
|---|---|
| 186 | |
| 116 | |
| 95 | |
| 64 | |
| 45 |