перебор всех возможных комбинаций по маске

Статус
В этой теме нельзя размещать новые ответы.

chang

Постоялец
Регистрация
20 Ноя 2009
Сообщения
363
Реакции
118
Здравствуйте

есть таблица "категории" и "подкатегории"

[/spoil]

также есть еще 2 таблицы связанные между собой как 1->*
[spoil] [/spoil]

в таблице table_templete поле maska принимает значения вида "{1}" или "{1|2|3} {3} {2|3|4|22}" или любые другие комбинации

числами здесь являются айдишники из таблицы категории


нужно по этой маске генерировать оригинальные комбинации значений для таблицы Table1 следующим образом.

1) взять айди категории ( один из имеющихся в фигурных скобках )
2) по айди категории достать значение из таблицы подкатегории
3) все это дело поместить в Table1-> value

предположим что имеются следующие данные в таблицах:
[spoil]
Код:
[B]категории[/B]
--------------------
[I]id[/I]
1
2

==========================

[B]подкатегории[/B]
id  id_категории  значение 
1         1          qwe_1
2         1          qwe_2
3         1          qwe_3
4         2          йцу_1
5         2          йцу_2

===============================

[B]table_templete[/B]

id      maska
1       {2}{1}

==============================

соответственно в Table1 нужно  нагенерировать следующие значения 
Table1
id   id_templete  value
1      1            йцу_1 qwe_1
1      1            йцу_1 qwe_2
1      1            йцу_1 qwe_3
1      1            йцу_2 qwe_1
1      1            йцу_2 qwe_2
1      1            йцу_2 qwe_3
как такое лучшим образом реализовать? чтоб исключить дублирование результирующего значения ну и чтоб работало поприличней.

желательно чтоб алгоритм за 1 запуск генерировал лишь 1 значение ( для таблицы Table1), но на крайний случай и сойдет чтоб он генерил всевозможные варианты за один запуск.

Буду благодарен за любые идеи и ссылки.
Всех с наступающим.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху