|
Представление множеств
|
|||
---|---|---|---|
#18+
Нужно сделать параметрический поиск для деталей с 10-20 параметрами, как это сделано во многих магазинах, например яндекс маркете. Сложность в выводе возможных значений параметров при уже примененных фильтрах. Например, есть таблица с параметрами конденсаторов - part_number, manufacturer, voltage, capacitance, case и т.д. Для каждой колонки уникальных значений не очень много, от 5 до 400. Должны отображаться списки производителей, напряжения, емкости и т.д. При выборе одного или нескольких параметров из какого-либо списка, остальные списки должны усекаться в соответствии с выбранными ограничениями. Я пытался получать эти списки как-то так (повторял для каждого интересующего столбца): Код: sql 1.
Проблема в том, что для таблицы с полумиллионом строк два десятка таких запросов выполняются слишком медленно. Наверное нужно каждому значению каждого параметра сопоставлять множества других параметров, и считать уже пересечения этих множеств. Но как это сделать? Не бейте меня, я вообще не программист. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2018, 22:54 |
|
Представление множеств
|
|||
---|---|---|---|
#18+
Читать тут: https://en.wikipedia.org/wiki/Entity–attribute–value_model Или ищи по форуму "Проектрование БД" по слову EAV ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2018, 22:46 |
|
|
start [/forum/topic.php?fid=54&fpage=4&tid=2008460]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
359ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 464ms |
0 / 0 |