Это довольно странный вопрос, но я постараюсь объяснить его в меру своих возможностей.
Допустим, у меня есть следующие две таблицы:
table: cars
+---------------+------------+----------------+--------------+
| color | size | capacity | origin |
+---------------+------------+----------------+--------------+
table: users
+----------------+---------------+--------------------+-----------------+
| desired_colors | desired_sizes | desired_capacities | desired_origins |
+----------------+---------------+--------------------+-----------------+
Очевидно,таблица автомобилей будет состоять из уникальных автомобилей с цветом, размером, грузоподъемностью и происхождением.
В таблице пользователей будет выбор пользователя из нескольких цветов, которые они хотят, нескольких размеров, которые они хотят, нескольких мощностей, которые они хотят, и несколькихпроисхождение, которое они хотят.
Теперь я задаюсь вопросом, как наилучшим образом добиться «совпадения» между желаемыми чертами пользователя и каждым транспортным средством.Таким образом, пользователи смогут увидеть топ-матчи автомобилей, которые им нужны.
У меня есть несколько идей о том, как я это сделаю, но мне было интересно, что все здесь думали, что это лучший способ сделать что-то вродеэтот.Я думаю, что лучший способ - это иметь таблицу «совпадений», показывающую совпадение между user_id
, car_id
и match_score
, но я не уверен, как и когда я выполню эти вычисления и сохранюэти данные.Еще одна вещь, о которой стоит подумать, если я решу изменить критерии оценки.
В любом случае, я знаю, что это странный вопрос, и я могу не получить много ответов, но просто надеюсь размешать банк и посмотреть, есть ли кто-нибудь.есть какие-то хорошие идеи.
Спасибо всем:)