Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите плз.... Вопрос жизни и смерти!!! / 7 сообщений из 7, страница 1 из 1
11.04.2003, 00:40
    #32138047
The Saint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Дана таблица, два поля: 'босс' и 'подчинённый'.
Задача состоит в том, чтобы составить запрос (с использованием средств программирования), добавляющий в эту таблицу строки, содержащие дополнительные связи. Например, если A - босс для B, а B - босс для С (т.е. в таблице имеется две строки
A -- B
B -- C), то добавляется строка
A -- C.
Понимаю, что задача дурацкая, но у меня некоторые проблемы с синтаксисом =( Заранее благодарен.
...
Рейтинг: 0 / 0
11.04.2003, 12:10
    #32138425
BigHarry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Т.е. поля в таблице должны выглядеть примерно так:
Kod - код человека;
BossKod - код босса этого человека, или 0 - если для этого чела нету босса.
Далее - наверно надо строить дерево.
Сначала выбрать всех самых главных (у кого код босса = 0), а потом последовательно выбирать всех, кто подчинен этому боссу.
...
Рейтинг: 0 / 0
11.04.2003, 12:21
    #32138449
mahoune
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
А сколько может быть вложений?
Для твоего примера подойдет используя INSERT ... SELECT :
Код: plaintext
1.
INSERT INTO tbl_1 (boss, subordinate) SELECT a.boss, b.subordinate FROM tbl1 a, tbl1 b WHERE b.boss=a.subordinate
...
Рейтинг: 0 / 0
11.04.2003, 14:04
    #32138680
The Saint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Структура может быть и не деревом, возможны также круговые конструкции...

Mahoune , вложений может быть, как я понимаю, сколько угодно... Как быть в этом случае??? Надо делать что-то вроде цикла???
...
Рейтинг: 0 / 0
11.04.2003, 14:16
    #32138705
mahoune
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Думаю, это будет самый простой вариант. Для каждого уровня запускаешь отдельный скрипт.
...
Рейтинг: 0 / 0
11.04.2003, 14:20
    #32138720
The Saint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Mahoune , но количество уровней неизвестно. Как узнать, сколько скриптов запускать? Или как тогда подсчитать уровни? Вообще-то к этой задачке была наводка, что надо использовать средства программирования...
...
Рейтинг: 0 / 0
11.04.2003, 14:52
    #32138780
mahoune
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите плз.... Вопрос жизни и смерти!!!
Тебе надо получать для каждой записи в таблице кол-во подчиненный. Если подчиненных нет, то вернуться на один уровень на верх. Одним словом, надо читать про реализацию деревьев. Уже не важно на чем. На SQL или на языке.
Если всего записей немного, то выбери из базы следующие данные
Код: plaintext
1.
2.
3.
| ID | NAME | BOSS_ID | NUM_OF_SUBORDINATES |

Потом проходишь по массиву и для каждой записи берешь, BOSS_ID и в эту запись добавляешь текущий ID.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите плз.... Вопрос жизни и смерти!!! / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]