मैं कहूंगा कि यह एक 1:n संबंध के लिए कहता है, जहां एक मास्टर "कसरत" तालिका है, और एक एकीकृत "घटक" तालिका है जिसमें कसरत की सभी गतिविधियां शामिल हैं।
आपके पास आपकी मुख्य तालिका होगी workouts
:
id int
participant varchar(255)
date datetime
...... any other workout related data
फिर चाइल्ड टेबल workout_components
:
workout_id int // Which workout this belongs to
tabindex int // Which sorting order this component has in the list
repeat int // Number of repetitions (e.g. 3 sets)
quantity int // e.g. 45 push-ups or 150 meters of cycling
quentity_unit varchar // e.g. minutes or laps
activity varchar // push-ups, cycling .....
एक उदाहरण मान इस तरह दिखेगा:
कसरत तालिका:
id participant date
1 Harry Miller 2010-08-21
कसरत_घटकों की तालिका:
workout_id tabindex repeat quantity quantity_unit activity
1 1 3 45 pcs pushups
1 2 1 2 minutes rope-jumping
लाभ:
-
विशिष्ट गतिविधियों तक सीमित नहीं है
-
क्वेरी करने में आसान - इस तरह की डेटा संरचना से कुछ कैसे प्राप्त करें से संबंधित प्रत्येक प्रश्न का उत्तर SO
पर पहले ही दिया जा चुका है। -
प्रत्येक कसरत में गतिविधियों को स्वतंत्र रूप से जोड़ा जा सकता है