Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
04.02.2004, 12:41
|
|||
---|---|---|---|
|
|||
запрос mysql 3.22.21 |
|||
#18+
привет. три таблицы: Код: plaintext 1. 2. 3. 4.
Код: plaintext 1. 2. 3. 4. 5.
Код: plaintext 1. 2. 3. 4.
по-человечески: - есть список людей (peoples), есть список групп (groups). - один человек может быть в нескольких группах. пример списка групп (представлено как дерево) начальники - - гады - - негады подчиненные - - умные - - глупые - - - - суперглупые - - - - так себе посторонние - - продавцы - - покупатели например, человек "масяня" находится в группах: - начальники/гады (принадлежит ТОЛЬКО последней группе, т.е. "гады" - подчиненные/глупые/суперглупые - покупатели рассматривается группа "покупатели", в которой есть "масяня": надо получить список корневых (выделены жирным ) групп, в дочерних элементах которых находится "масяня". в общем: надо получить список корневых групп (с учетом дочерних групп), в которых есть хотя бы один человек из группы "покупатели". реально ли (см. тему сообщения) это сделать одним запросом. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2004, 13:15
|
|||
---|---|---|---|
|
|||
запрос mysql 3.22.21 |
|||
#18+
В такой структуре нереально, если же немного подправить groups, то будет можно. Т.е. groups переделать как Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
тогда Код: plaintext 1. 2. 3. 4. 5. 6. 7.
по поводу lc, rc, level, num полей где то были статьи о представлении деревьев в виде вложенных множеств ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2004, 13:22
|
|||
---|---|---|---|
|
|||
запрос mysql 3.22.21 |
|||
#18+
понятно. можно ли (опять же одним запросом и в существующей структуре groups, т.е. та, которую я привел) получить самую верхнюю группу для опреедленной группы. то есть для группы начальники/гады/[так себе] получить [начальники] ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2004, 13:55
|
|||
---|---|---|---|
|
|||
запрос mysql 3.22.21 |
|||
#18+
в общем случае нет, но можно заложится на некоторую вложенность, типа Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=47&tablet=1&tid=1855443]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 136ms |
0 / 0 |