Имате връзка много към много между имоти и удобства. За да моделирате това, имате нужда от отделна таблица, а не от променлив брой колони.
Има една таблица, която съхранява вашите свойства.
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
таблицата са полетата, които не са отметнати.
Свързано четене . Трябва да вземете книга за релационни бази данни от местните ГРАНИЦИ, преди да излязат от бизнеса :)