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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
chalmers
New Member

Select first row metting condition

Hi, I have a table (PRODUCT) with product data and a creation datetime. I have a second table (PERIOD) with year, sale period, and start / end date of those period.

 

I try to create a column in PRODUCT containing the row of PERIOD when my creation datetime is between start date and end date. Right now, I have this formula ("period" is a step before where I ref the second table):

Table.AddColumn(#"Step before", "PERIOD", each Table.SelectRows(period, (v_period) => ([DATETIMECREATION] >= v_period[STARTDATE] and [DATETIMECREATION] <= v_period[ENDDATE])))

 

I have the good result, but since I have ~400 row in PERIOD and maybe 4 000 000 rows in product, is there a better way ? I've try a conditional join but without sucess. And Table.First don't take condition. I use SelectRows but only get one result each time.

1 REPLY 1
lbendlin
Super User
Super User

Flip the loops around (each and (v_period).  Also try it with the tables flipped around. Then try it with Table.AddKey for your join condition columns.

 

If you can, provide meaningful sample data.   That  will allow us to suggest the most performant approach.

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! Prices go up Feb. 11th.

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

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