@@ -184,7 +184,6 @@ export async function queryMembersAdvanced(
184184 { pgPromiseFormat : true } ,
185185 )
186186
187- // Build queries
188187 const countQuery = buildCountQuery ( {
189188 withAggregates,
190189 searchConfig,
@@ -212,6 +211,9 @@ export async function queryMembersAdvanced(
212211 return { alias : f , ...mappedField }
213212 } )
214213 . filter ( ( mappedField ) => mappedField . queryable !== false )
214+ // Exclude fields from SELECT if their source table isn't joined:
215+ // - skip msa.* when aggregates aren't included (no join with memberSegmentsAgg)
216+ // - skip mo.* when member organizations aren't included (no join with member_orgs)
215217 . filter ( ( mappedField ) => {
216218 if ( ! withAggregates && mappedField . name . includes ( 'msa.' ) ) return false
217219 if ( ! include . memberOrganizations && mappedField . name . includes ( 'mo.' ) ) return false
@@ -233,7 +235,6 @@ export async function queryMembersAdvanced(
233235
234236 log . info ( `main query: ${ mainQuery } with params ${ JSON . stringify ( params ) } ` )
235237
236- // Execute queries in parallel
237238 const [ rows , countResult ] = await Promise . all ( [
238239 qx . select ( mainQuery , params ) ,
239240 qx . selectOne ( countQuery , params ) ,
@@ -253,7 +254,6 @@ export async function queryMembersAdvanced(
253254 include . maintainers ? findMaintainerRoles ( qx , memberIds ) : Promise . resolve ( [ ] ) ,
254255 ] )
255256
256- // Second parallel batch - fetch related data
257257 const [ orgExtra , segmentsInfo , maintainerSegmentsInfo ] = await Promise . all ( [
258258 include . memberOrganizations
259259 ? fetchOrganizationData ( qx , memberOrganizations )
@@ -264,8 +264,6 @@ export async function queryMembersAdvanced(
264264 : Promise . resolve ( [ ] ) ,
265265 ] )
266266
267- // Data processing section
268-
269267 if ( include . memberOrganizations ) {
270268 const { orgs = [ ] , lfx = [ ] } = orgExtra
271269
@@ -350,7 +348,6 @@ export async function queryMembersAdvanced(
350348 return { rows, count, limit, offset }
351349}
352350
353- // ...existing code... (resto delle funzioni rimangono uguali)
354351export async function queryMembers < T extends MemberField > (
355352 qx : QueryExecutor ,
356353 opts : QueryOptions < T > ,
0 commit comments