я хочу сделать матрицу с MySQL
а также PHP
, но почему-то я не знаю, как сделать это проще для меня. У меня есть две таблицы данных:
id_car
car
А ТАКЖЕ
id_extra
extra
И последняя база данных, которая имеет оба идентификатора из предыдущих таблиц:
id_car
id_extra
должна быть матрица (таблица), показывающая для каждого специального автомобиля (например, BMW) каждый дополнительный, который он имеет.
наверху находятся различные марки автомобилей, а слева — дополнительные функции, которые есть у автомобилей. матрица показывает, какие дополнительные автомобильные бренды имеют.
| BMW | FERRARI | RENAULT |
red | NO | YES | YES |
sunroof | YES | NO | YES |
central locking | YES | YES | YES |
heated seats | YES | NO | NO |
Можете ли вы дать мне несколько советов, как лучше получить такую матрицу?
может быть, вы можете дать мне лучшее решение для базы данных ?!
так как вы спрашивали о лучших решениях …
это обычно считается антипаттерном SQL, называемым Entity-Attribute-Value
http://mikesmithers.wordpress.com/2013/12/22/the-anti-pattern-eavil-database-design/
ссылка выше расскажет вам, почему это плохо, что вы должны сделать вместо этого, и даст вам полную реализацию вашего представления, если вы решите придерживаться его.
TLDR;
Вы уверены, что не можете просто поместить «дополнительные» в качестве логических полей в таблицу машин?
Других решений пока нет …