diff --git a/DigitalLearningSolutions.Data.Migrations/202410091524_UpdateCandidateAssessmentSupervisorsDuplicateRows.cs b/DigitalLearningSolutions.Data.Migrations/202410091524_UpdateCandidateAssessmentSupervisorsDuplicateRows.cs new file mode 100644 index 0000000000..c17179482c --- /dev/null +++ b/DigitalLearningSolutions.Data.Migrations/202410091524_UpdateCandidateAssessmentSupervisorsDuplicateRows.cs @@ -0,0 +1,24 @@ +namespace DigitalLearningSolutions.Data.Migrations +{ + using FluentMigrator; + + [Migration(202410091524)] + public class UpdateCandidateAssessmentSupervisorsDuplicateRows : ForwardOnlyMigration + { + public override void Up() + { + Execute.Sql(@$"WITH CAS_Duplicates AS ( + SELECT ID, + ROW_NUMBER() OVER (PARTITION BY CandidateAssessmentID,SupervisorDelegateId ORDER BY Id DESC) AS RowNum + FROM CandidateAssessmentSupervisors + WHERE CandidateAssessmentSupervisors.Removed is null + ) + UPDATE CandidateAssessmentSupervisors + SET Removed = GETUTCDATE() + FROM CandidateAssessmentSupervisors cas INNER JOIN + CAS_Duplicates casd ON cas.ID = casd.ID + WHERE casd.RowNum > 1;"); + } + + } +}