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

The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!

Reply
PietroFarias
Resolver II
Resolver II

Return value from current table to a subquery (Power Query)

Hey guys!

I want the column of a "subquery" to be equal to the column of the current table.

Sample:

= Table.AddColumn(
	NbrMonth,
	"NmbCustomer",
	each
		Table.RowCount(
			Table.SelectRows(
				Table.Distinct(
					Table.SelectColumns(
						NbrMonth,{"Store","Op", "NF"}
					)
				),
			each ([NF] = [NF]) //I want the [NF] column of this "subquery" to be equal to [NF] of the NbrMonth table.
		)
	) 
2 ACCEPTED SOLUTIONS
OwenAuger
Super User
Super User

Hi @PietroFarias

 

This should do the trick:

 

= Table.AddColumn(
    NbrMonth,
    "NmbCustomer",
    each
        let OuterNF = [NF]
        in
        Table.RowCount(
            Table.SelectRows(
                Table.Distinct(
                    Table.SelectColumns(
                        NbrMonth,{"Store","Op", "NF"}
                    )
                ),
                each ([NF] = OuterNF)
            )
        )
    )

 

 Regards,

Owen


Owen Auger
Did I answer your question? Mark my post as a solution!
Blog
LinkedIn

View solution in original post

Glad it worked 🙂

 

Sure - a "let expression" is used to capture values from intermediate calculations before returning a result.

It takes the form

 

let
   variable1 = expression1,
   variable2 = expression2,
   ...
in
   result_expression

In your example, I used let OuterNF = [NF] to store the value of [NF] from the current row so that I could refer to it in the result expression. The resulting "let expression" formatted a little differently was:

let
   OuterNF = [NF]
in
   Table.RowCount(
      Table.SelectRows(
         Table.Distinct(
            Table.SelectColumns(
               NbrMonth,{"Store","Op", "NF"}
            )
         ),
         each ([NF] = OuterNF)
      )
   )

Here is a link to the Power Query M language specification which might be useful for reference - see page 85 for let expressions:

https://msdn.microsoft.com/en-us/query-bi/m/power-query-m-language-specification

 

Best regards,

Owen


Owen Auger
Did I answer your question? Mark my post as a solution!
Blog
LinkedIn

View solution in original post

3 REPLIES 3
OwenAuger
Super User
Super User

Hi @PietroFarias

 

This should do the trick:

 

= Table.AddColumn(
    NbrMonth,
    "NmbCustomer",
    each
        let OuterNF = [NF]
        in
        Table.RowCount(
            Table.SelectRows(
                Table.Distinct(
                    Table.SelectColumns(
                        NbrMonth,{"Store","Op", "NF"}
                    )
                ),
                each ([NF] = OuterNF)
            )
        )
    )

 

 Regards,

Owen


Owen Auger
Did I answer your question? Mark my post as a solution!
Blog
LinkedIn

@OwenAuger

It work! Great.
I'm a newbie in M. Can you explain me why the "LET"?

Glad it worked 🙂

 

Sure - a "let expression" is used to capture values from intermediate calculations before returning a result.

It takes the form

 

let
   variable1 = expression1,
   variable2 = expression2,
   ...
in
   result_expression

In your example, I used let OuterNF = [NF] to store the value of [NF] from the current row so that I could refer to it in the result expression. The resulting "let expression" formatted a little differently was:

let
   OuterNF = [NF]
in
   Table.RowCount(
      Table.SelectRows(
         Table.Distinct(
            Table.SelectColumns(
               NbrMonth,{"Store","Op", "NF"}
            )
         ),
         each ([NF] = OuterNF)
      )
   )

Here is a link to the Power Query M language specification which might be useful for reference - see page 85 for let expressions:

https://msdn.microsoft.com/en-us/query-bi/m/power-query-m-language-specification

 

Best regards,

Owen


Owen Auger
Did I answer your question? Mark my post as a solution!
Blog
LinkedIn

Helpful resources

Announcements
FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.