db.select({
department: sql<typeof departments>`row_to_json(${departments}.*)`.as(
"department",
),
jobTitle: sql<typeof jobTitles>`row_to_json(${jobTitles}.*)`.as(
"job_title",
),
teamMemberCompensation: teamMemberCompensations,
teamMemberTermination: teamMemberTerminations,
})
.from(teamMemberCompensations)
.leftJoin(
departments,
eq(departments.id, teamMemberCompensations.departmentId),
)
.leftJoin(jobTitles, eq(jobTitles.id, teamMemberCompensations.jobTitleId))
.leftJoin(
teamMemberTerminations,
eq(
teamMemberTerminations.teamMemberCompensationId,
teamMemberCompensations.id,
),
)
.where(...)
db.select({
department: sql<typeof departments>`row_to_json(${departments}.*)`.as(
"department",
),
jobTitle: sql<typeof jobTitles>`row_to_json(${jobTitles}.*)`.as(
"job_title",
),
teamMemberCompensation: teamMemberCompensations,
teamMemberTermination: teamMemberTerminations,
})
.from(teamMemberCompensations)
.leftJoin(
departments,
eq(departments.id, teamMemberCompensations.departmentId),
)
.leftJoin(jobTitles, eq(jobTitles.id, teamMemberCompensations.jobTitleId))
.leftJoin(
teamMemberTerminations,
eq(
teamMemberTerminations.teamMemberCompensationId,
teamMemberCompensations.id,
),
)
.where(...)