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

Get inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.

Reply
rolinx
New Member

Convert SQL to DAX

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')

1 ACCEPTED SOLUTION
lbendlin
Super User
Super User

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.

 

View solution in original post

2 REPLIES 2
lbendlin
Super User
Super User

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"}

)

 

 

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.