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
Please, I need help about how to convert this SQL query to DAX.
select col1, col2, col3
from tab
where length(col1) = '10'
or (substr(col2,1,3) in ('103','234','563')
or (substr(col2,1,4) in ('1034','2354','5636')
or (substr(col2,1,2) in ('14','24','36')
Solved! Go to Solution.
CALCULATETABLE(<your table>,
LEN([col1])=10
|| MID([col2],1,3) in {"103","234","563"}
|| MID([col2],1,4) in {"2354"}
|| MID([col2],1,2) in {"14","24","36"}
)
You can add SELECTCOLUMNS if you want. Note that your third condition is semi redundant.
CALCULATETABLE(<your table>,
LEN([col1])=10
|| MID([col2],1,3) in {"103","234","563"}
|| MID([col2],1,4) in {"2354"}
|| MID([col2],1,2) in {"14","24","36"}
)
You can add SELECTCOLUMNS if you want. Note that your third condition is semi redundant.
Thanks Ibendlin, Its works fine!
Its works also with LEFT function.
CALCULATETABLE(<your table>,
LEN([col1])=10
|| LEFT([col2],3) in {"103","234","563"}
|| LEFT([col2],4) in {"2354"}
|| LEFT([col2],2) in {"14","24","36"}
)
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
Check out the November 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 20 | |
| 11 | |
| 10 | |
| 4 | |
| 4 |
| User | Count |
|---|---|
| 33 | |
| 30 | |
| 19 | |
| 12 | |
| 11 |