diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/AttendanceRepository.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/AttendanceRepository.java
index 09a8da8a311be358f299e3bac3034aaff15b6158..113e6d8d3a18c788c99b4fce0e351b043ff45f1e 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/AttendanceRepository.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/AttendanceRepository.java
@@ -11,4 +11,6 @@ public interface AttendanceRepository extends JpaRepository<AttendanceRecord, Lo
     boolean existsByStudentEnrollmentNumber(String studentEnrollmentNumber);
     AttendanceRecord findByStudentEnrollmentNumber(String studentEnrollmentNumber);
     List<AttendanceRecord> findByExamCycleId(Long examCycleId);
+
+    List<AttendanceRecord> findByExamCycleData(String examCycleName);
 }
\ No newline at end of file
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamCycleRepository.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamCycleRepository.java
index cb85bcf5da02ac0ca150c78054dc483c7992bf4d..d41263de9ce8ff9ad027fe7e3ab95e5d3560e92f 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamCycleRepository.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamCycleRepository.java
@@ -15,6 +15,9 @@ public interface ExamCycleRepository extends JpaRepository<ExamCycle, Long> {
     // Fetch all non-obsolete records
     List<ExamCycle> findByObsolete(Integer value);
 
+    @Query("SELECT ec.examCycleName FROM ExamCycle ec WHERE ec.id = :examCycleId")
+    String getExamCycleNameById(@Param("examCycleId") Long examCycleId);
+
     // Fetch a non-obsolete record by ID
     Optional<ExamCycle> findByIdAndObsolete(Long id, Integer value);
     ExamCycle findByExamCycleName(String name);
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamRepository.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamRepository.java
index f914cb86c6747effd16b853f622a7e0f1a386a6a..62b100310fa073d6cd5db5737a1b7446b7e6d28c 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamRepository.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/ExamRepository.java
@@ -26,4 +26,5 @@ public interface ExamRepository extends JpaRepository<Exam, Long> {
 
     @Query("SELECT e FROM Exam e JOIN StudentExamRegistration ser ON e.id = ser.exam.id WHERE ser.student.id = :studentId AND e.examCycleId = :examCycleId")
     List<Exam> findRegisteredExamsForStudentInCycle(Long studentId, Long examCycleId);
+    String getExamNameById(Long exam);
 }
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentResultRepository.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentResultRepository.java
index f12ee6cad2175a76809ab0b7abf50d88b830a96e..f1823a95bb2b0a286173af2c4abc4c7075b96c11 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentResultRepository.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentResultRepository.java
@@ -2,6 +2,7 @@ package com.tarento.upsmf.examsAndAdmissions.repository;
 
 import com.tarento.upsmf.examsAndAdmissions.model.Exam;
 import com.tarento.upsmf.examsAndAdmissions.model.ExamCycle;
+import com.tarento.upsmf.examsAndAdmissions.model.StudentExamRegistration;
 import com.tarento.upsmf.examsAndAdmissions.model.StudentResult;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.Modifying;
@@ -56,5 +57,11 @@ public interface StudentResultRepository extends JpaRepository<StudentResult, Lo
     List<StudentResult> findByExamExamNameAndInstituteId(String examName, Long instituteId);
 
     List<StudentResult> findByStudent_EnrollmentNumberAndExamCycle_IdAndPublished(String enrollmentNumber, Long examCycleId, boolean b);
+
+    @Query("SELECT sr FROM StudentResult sr WHERE sr.examCycle_name = :examCycleName AND sr.exam_name = :examName AND sr.student.institute.id = :institute")
+    List<StudentResult> findByExamCycleNameAndExamNameAndInstitute(String examCycleName, String examName, Long institute);
+
+    @Query("SELECT sr FROM StudentResult sr WHERE sr.examCycle_name = :examCycleName")
+    List<StudentResult> findByExamCycleName(String examCycleName);
 }
 
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/AttendanceService.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/AttendanceService.java
index 393d3bc23a4580114a7ebf81bd1b68c0399201d5..fbd4ac25898b161ab365b35f785c46f3b61465b0 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/AttendanceService.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/AttendanceService.java
@@ -270,8 +270,8 @@ public class AttendanceService {
     }
     public ResponseDto getByExamCycleId(Long ExamCycleId) {
         ResponseDto response = new ResponseDto(Constants.API_ATTENDANCE_BY_EXAM_CYCLE_ID);
-        List<AttendanceRecord> records = attendanceRepository.findByExamCycleId(ExamCycleId);
-
+        String examCycleName = examCycleRepository.getExamCycleNameById(ExamCycleId);
+        List<AttendanceRecord> records = attendanceRepository.findByExamCycleData(examCycleName);
         if (records.isEmpty()) {
             ResponseDto.setErrorResponse(response, "NO_RECORDS_FOUND", "No attendance records found", HttpStatus.NOT_FOUND);
         } else {
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/DataImporterService.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/DataImporterService.java
index 9bc668f53da283ab466ba40e181e2097fd40735c..67d760afb089e5f5dde03b0eade56c4edcaaa968 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/DataImporterService.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/DataImporterService.java
@@ -402,7 +402,7 @@ public class DataImporterService {
 
         for (StudentResult dto : dtoList) {
             boolean isDuplicate = checkIfDataExists(dto);
-
+            //fetch data from student_exam_registration and set the flag there, if the record is not found break and return data invalid
             if (isDuplicate) {
                 if (!DataValidation.isFirstNameValid(dto.getFirstName())) {
                     validationErrors.add("- First Name is invalid: " + dto.getFirstName() + " First name has to contain alphabetic values only");
diff --git a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentResultService.java b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentResultService.java
index 4d25b9111df9217ea1d82f49ef6a687d516d81ec..b94a0d23f60033df014d564ecdb10624c06503e7 100644
--- a/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentResultService.java
+++ b/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentResultService.java
@@ -9,7 +9,9 @@ import com.tarento.upsmf.examsAndAdmissions.repository.*;
 import com.tarento.upsmf.examsAndAdmissions.util.Constants;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
-import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.codehaus.jettison.json.JSONArray;
@@ -19,8 +21,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
-import java.math.BigDecimal;
-import java.time.LocalDate;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -33,6 +33,8 @@ public class StudentResultService {
     @Autowired
     private StudentRepository studentRepository;
 
+    @Autowired
+    private InstituteRepository instituteRepository;
     @Autowired
     private CourseRepository courseRepository;
 
@@ -703,8 +705,8 @@ public class StudentResultService {
     }
     public ResponseDto getExamResultsByExamCycle(Long examCycle) {
         ResponseDto response = new ResponseDto(Constants.API_EXAM_CYCLE_MANAGE_RESULTS);
-
-        List<StudentExamRegistration> results = studentExamRegistrationRepository.findByExamCycleId(examCycle);
+        String examCycleName = examCycleRepository.getExamCycleNameById(examCycle);
+        List<StudentResult> results = studentResultRepository.findByExamCycleName(examCycleName);
 
         if (results == null || results.isEmpty()) {
             ResponseDto.setErrorResponse(response, "RECORD_NOT_FOUND", "No record found for the given exam cycle.", HttpStatus.NOT_FOUND);
@@ -719,17 +721,17 @@ public class StudentResultService {
         return response;
     }
 
-    private static Map<Long, ProcessedResultDto> getProcessedResults(List<StudentExamRegistration> results) {
+    private Map<Long, ProcessedResultDto> getProcessedResults(List<StudentResult> results) {
         Map<Long, ProcessedResultDto> processedResults = new HashMap<>();
-        for (StudentExamRegistration result : results) {
-            Institute institute = result.getStudent().getInstitute();
-            Long instituteId = institute.getId();
+        for (StudentResult result : results) {
+            Long instituteId = result.getInstituteId();
+            Institute institute = instituteRepository.findById(instituteId).orElseThrow();
 
             ProcessedResultDto instituteResult = processedResults.computeIfAbsent(instituteId, id -> {
                 ProcessedResultDto dto = new ProcessedResultDto();
                 dto.setInstituteId(instituteId);
                 dto.setInstituteName(institute.getInstituteName());
-                dto.setCourse(result.getStudent().getCourse().getCourseName());
+                dto.setCourse(result.getCourse_name());
                 return dto;
             });
             instituteResult.setHasFinalMarks(result.isInternalMarkFlag());
@@ -742,7 +744,9 @@ public class StudentResultService {
 
     public ResponseDto getMarksByInstituteAndExamCycle(Long examCycle, Long exam, Long institute) {
         ResponseDto response = new ResponseDto(Constants.API_SINGLE_EXAM_MARK);
-        List<StudentResult> studentResults = studentResultRepository.findByExamCycleAndExamAndInstitute(examCycle, exam, institute);
+        String examCycleName = examCycleRepository.getExamCycleNameById(examCycle);
+        String examName = examRepository.getExamNameById(exam);
+        List<StudentResult> studentResults = studentResultRepository.findByExamCycleNameAndExamNameAndInstitute(examCycleName, examCycleName, institute);
 
         // If no results found, return a not found response.
         if(studentResults.isEmpty()) {