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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
mike_viz_lord
Frequent Visitor

How to count rows from another table in Power Query

Table_A is a list of each STATE along with dimensions and measures for each state. Table_B is a list of ATTORNEY_NAME by STATE (one to many relationship). I'm trying to create a custom column in Table_A that counts the number of distinct ATTORNEY_NAME where Table_B.STATE = Table_A.STATE. Any help would be greatly appreciated. Looking for this solution in Power Query, not DAX (for other reasons).

 

Sample data:

 

Table_A

STATEINCOMEEXPENSE
IL65465413541654
NV654646534635
NC353416463546
KY654967466346

 

Table_B

STATEATTORNEY_NAME
ILJIM
ILJIM
ILBILL
ILJOHN
ILADAM
NVMIKE
NVNANCY
NVJILL
NCEMMA
NCHENRY
NCCONSUELO
NCTIM
KYBECKY
KYDAN

 

Expected Table_A

STATEINCOMEEXPENSECUSTOM_DISTINCT_ATTORNEY_COUNT
IL654654135416544
NV6546465346353
NC3534164635464
KY6549674663462
1 ACCEPTED SOLUTION
Anonymous
Not applicable

Sorry, that's wrong. THIS will work, and it's easier.

NewStep=Table.NestedJoin(PreviousStep, {"STATE"}, Table.Distinct(TABLE_2), {"STATE"}, "People", JoinKind.LeftOuter)

 

Now, instead of Expanding the table column, you can choose Aggregate, select "Count" for either column, and you are done, 
 

 

View solution in original post

6 REPLIES 6
shaowu459
Resolver II
Resolver II

Could you upload some sample data with expected results, that will allow us understand you case and test PQ code more easily.

Sure, just added to original post.

Please test below code:

let
    tblA = Excel.CurrentWorkbook(){[Name="TableA"]}[Content],
    tblB = Excel.CurrentWorkbook(){[Name="TableB"]}[Content],
    res = Table.AddColumn(tblA,"Distinct_Count",each List.Count(List.Distinct(Table.SelectRows(tblB,(x)=>x[STATE]=[STATE])[ATTORNEY_NAME])))
in
    res

 1.png

Thanks. Getting the following error:

 

Expression.Error: A cyclic reference was encountered during evaluation.

 

Here is the code generated with actual table and field names:

 

= Table.AddColumn(#"Reordered Columns1", "Custom", each let
tblA = #"State Expansion Data - Un-Pivoted",
tblB = #"Current List All Attys",
res = Table.AddColumn(tblA,"Distinct_Count",each List.Count(List.Distinct(Table.SelectRows(tblB,(x)=>x[State]=[PRACTICE STATE])[ATTY NAME])))
in
res)

Anonymous
Not applicable

You could use:

NewColumn=Table.AddColumn(LastStep, "Rows", each Table.RowCount(Table.SelectRows(TableName, each [Table_B.STATE] = [Table_A.STATE])))

Anonymous
Not applicable

Sorry, that's wrong. THIS will work, and it's easier.

NewStep=Table.NestedJoin(PreviousStep, {"STATE"}, Table.Distinct(TABLE_2), {"STATE"}, "People", JoinKind.LeftOuter)

 

Now, instead of Expanding the table column, you can choose Aggregate, select "Count" for either column, and you are done, 
 

 

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

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.