
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.04.2003, 08:52
|
|||
|---|---|---|---|
|
|||
Дерево, с ограничениями... |
|||
|
#18+
Есть дерево, которое храниться с помощью 2-х таблиц - Good(id, name, groupID) & Groups(id, name) и есть еще одна таблица CustomerGoods(id, cust_id, good_id)... как выбрать только те группы, у которых есть товары( при этом наличие товаров смотриться CustomerGoods), сохраняя иерархию? тут трабл в том, что группа может и не иметь товара, но вложенная в нее группа имеет... те мб так Код: plaintext 1. 2. 3. соотв нужно выбрать обе группы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 09:44
|
|||
|---|---|---|---|
Дерево, с ограничениями... |
|||
|
#18+
1. Дерево должно храниться в одной таблице. 2.connect by IB не поддерживает -> а) написать хранимую процедуру или б) создать служебное поле "количество потомков", которое заполнять триггером при добавлении нового товара(тогда группы можно будет достать селектом). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 09:52
|
|||
|---|---|---|---|
Дерево, с ограничениями... |
|||
|
#18+
Моку предложить вариант (у меня подобная задача стояла в системе безопасности), сперва производим разбор дерева классический, а потом полученный набор данных фильтруем по нужным условиям ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 09:54
|
|||
|---|---|---|---|
|
|||
Дерево, с ограничениями... |
|||
|
#18+
давай! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 09:56
|
|||
|---|---|---|---|
|
|||
Дерево, с ограничениями... |
|||
|
#18+
у меня примерно такая идея - сначала выбираем все группы, имеющие товары... Код: plaintext 1. потом выбираем группы, являющиеся предками, для предыдущих... и т.д. Код: plaintext 1. 2. вот только как это сдалать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 09:57
|
|||
|---|---|---|---|
Дерево, с ограничениями... |
|||
|
#18+
так я вообще-то уже предложил....\r разбор тут\r ну а в темповой таблице я думаю удаление ненужных строк сможешь и сам написать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.04.2003, 10:02
|
|||
|---|---|---|---|
Дерево, с ограничениями... |
|||
|
#18+
А по поводу твоей мысли, это можно ТОЛЬКО при условии что нужно проработать всю таблицу. На практике возникает чаще, что известен некоторый корень и от него нужно плясать. Тогда твой алгоритм будет медленным, так как придется переваривать всю таблицу и не раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=40&mobile=1&tid=1580638]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
32ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
24ms |
get tp. blocked users: |
2ms |
| others: | 201ms |
| total: | 285ms |

| 0 / 0 |
