आपके पास संपत्तियों और सुविधाओं के बीच कई-से-अनेक संबंध हैं। इसे मॉडल करने के लिए, आपको एक अलग तालिका की आवश्यकता है, न कि स्तंभों की एक चर संख्या की।
एक तालिका है जो आपकी संपत्तियों को संग्रहीत करती है।
INSERT INTO property (id, address, square_footage...) VALUES (111, '123 Main St', 1234...)
एक टेबल है जो सभी संभावित सुविधाओं को संग्रहीत करती है।
INSERT INTO amenities (id, type, description) VALUES (222, 'Unit Features', 'Air Conditioning');
संपत्ति की प्रत्येक सुविधा के लिए, इन दोनों से संबंधित तालिका में एक पंक्ति डालें:
INSERT INTO property_amenitities (property_id, amenity_id) VALUES (111, 222);
जब आप जानना चाहते हैं कि किसी विशिष्ट संपत्ति में क्या सुविधाएं हैं, तो बस SELECT
उस संपत्ति की कुंजी के लिए इस तालिका से सभी पंक्तियां। जब आप सभी सुविधाओं के लिए चेकबॉक्स का प्रिंट आउट लेना चाहते हैं, तो SELECT
amenities
. से तालिका बनाएं और एक LEFT OUTER JOIN
property_amenities
. के लिए टेबल। property_amenities
. से रिक्त मान वाली वे पंक्तियाँ तालिका वे बॉक्स हैं जो अनियंत्रित हैं।
संबंधित पठन . आपको अपने स्थानीय BORDERS के व्यवसाय से बाहर जाने से पहले रिलेशनल डेटाबेस पर एक पुस्तक उठानी चाहिए :)