Цитата:
Сообщение от
DesparioN
... рекурсивно ... в таблице.
1.
рекурсия и SQL - несовместимые вещи по определению.
да, в современных SQL диалектах есть специальные операторы для рекурсии в запросах.
но сразу понимайте, что рекурсия и SQL - это боль и страдания.
2.
то, как вы описали задачу требует решения еще одной подзадачи:
определить циклические графы и как то работать с ними.
опять же, графы совместно с SQL - это боль.
3.
стопудов люди работают с аналогами не так.
я не помню ни одного товароведа, который определял бы аналоги через другие продукты.
скорее всего, у них есть некий признак, который проставляется в продукт.
одинаковый признак - аналог, разный признак - не аналог
Продукт1, Аналог1
Продукт2, Аналог1
Продукт3, Аналог1
Продукт4, Аналог1
Продукт5, "" - пустышка не является аналогом никому, например
Продукт6, Аналог2
...
4.
В Аксапте кроме продуктов аналогом может является (или не являться) первичная складская аналитика - цвета, размеры, конфигурации
Продукт1, Цвет1, Аналог1
Продукт1, Цвет2, Аналог1
Продукт2, Цвет1, Аналог1
Продукт2, Цвет3, Аналог1
Продукт3, Цвет3, Аналог2
Продукт4, Цвет1, Аналог2
Продукт5, "", "" - пустышка в цвете означает "любой цвет", например. пустышка в аналоге не является аналогом никому, например
Продукт6, Цвет1, Аналог2