Skip to content

Commit 2a051c9

Browse files
authored
Optimize getMembers query in member llm workflow (#2949)
1 parent ecdb6d7 commit 2a051c9

File tree

1 file changed

+20
-9
lines changed

1 file changed

+20
-9
lines changed

services/libs/data-access-layer/src/old/apps/merge_suggestions_worker/memberMergeSuggestions.repo.ts

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -215,17 +215,28 @@ class MemberMergeSuggestionsRepository {
215215
mem.attributes,
216216
mem."displayName",
217217
mem."joinedAt",
218-
jsonb_agg(distinct mI) as identities,
219-
coalesce(jsonb_agg(distinct organizations) filter (where organizations is not null), '[]'::jsonb) as organizations
218+
jsonb_agg(distinct mI) as identities,
219+
coalesce(
220+
(
221+
select jsonb_agg(
222+
jsonb_build_object(
223+
'displayName', o."displayName",
224+
'logo', o.logo,
225+
'dateStart', mo."dateStart",
226+
'dateEnd', mo."dateEnd",
227+
'title', mo.title
228+
)
229+
)
230+
from "memberOrganizations" mo
231+
join organizations o on o.id = mo."organizationId"
232+
where mo."memberId" = mem.id
233+
),
234+
'[]'::jsonb
235+
) as organizations
220236
from members mem
221-
join "memberIdentities" mI on mem.id = mI."memberId"
222-
left join "memberOrganizations" mo on mem.id = mo."memberId"
223-
left join (select o."displayName", o.logo, mox."dateStart", mox."dateEnd", mox.title, mox."memberId"
224-
from "memberOrganizations" mox
225-
join organizations o on mox."organizationId" = o.id) as organizations
226-
on organizations."memberId" = mo."memberId"
237+
join "memberIdentities" mI on mem.id = mI."memberId"
227238
where mem.id in ($(memberIds:csv))
228-
group by mI."memberId", mem.attributes, mem."displayName", mem."joinedAt"`,
239+
group by mem.id, mem.attributes, mem."displayName", mem."joinedAt";`,
229240
{
230241
memberIds,
231242
},

0 commit comments

Comments
 (0)