diff --git a/backend/src/db/migrations/20250603094506_access-request-sequential.ts b/backend/src/db/migrations/20250603094506_access-request-sequential.ts index 901e9e7ac..d023cc08c 100644 --- a/backend/src/db/migrations/20250603094506_access-request-sequential.ts +++ b/backend/src/db/migrations/20250603094506_access-request-sequential.ts @@ -16,15 +16,17 @@ export async function up(knex: Knex): Promise { } // set rejected status for all access request that was rejected and still has status pending - await knex(TableName.AccessApprovalRequest) + const subquery = knex(TableName.AccessApprovalRequest) .leftJoin( TableName.AccessApprovalRequestReviewer, - `${TableName.AccessApprovalRequest}.id`, - `${TableName.AccessApprovalRequestReviewer}.requestId` + `${TableName.AccessApprovalRequestReviewer}.requestId`, + `${TableName.AccessApprovalRequest}.id` ) .where(`${TableName.AccessApprovalRequest}.status` as "status", "pending") .where(`${TableName.AccessApprovalRequestReviewer}.status` as "status", "rejected") - .update(`${TableName.AccessApprovalRequest}.status` as "status", "rejected"); + .select(`${TableName.AccessApprovalRequest}.id`); + + await knex(TableName.AccessApprovalRequest).where("id", "in", subquery).update("status", "rejected"); } export async function down(knex: Knex): Promise {