diff --git a/services/scheduleService.js b/services/scheduleService.js
index f90362dc48da2e7afa4a3ef3bb0eab5e80420348..ce19f534568939c8a8c5483b4872405bc0a71c5a 100644
--- a/services/scheduleService.js
+++ b/services/scheduleService.js
@@ -103,6 +103,37 @@ class schedulService {
             throw new Error(`Failed to fetch schedules: ${error.message}`);
         }
     }
+
+    /**
+     * 해당 사용자의 특정 스케줄 조회
+     */
+    async getScheduleById(id, userId) {
+        try {
+            const schedule = await Schedule.findOne({
+                where: {
+                    id,
+                    user_id: userId,
+                    [Op.or]: [
+                        { is_fixed: true },
+                        {
+                            is_fixed: false,
+                            expiry_date: {
+                                [Op.gt]: new Date()
+                            }
+                        }
+                    ]
+                }
+            });
+            
+            if (!schedule) {
+                throw new Error('Schedule not found');
+            }
+            
+            return schedule;
+        } catch (error) {
+            throw new Error(`Failed to fetch schedule: ${error.message}`);
+        }
+    }
     
 
 }
\ No newline at end of file