|
|
|
|
|
для: cheops
(03.09.2006 в 18:22)
| | Хоршо. Тогда сколько максимум записей "вниз" может быть без ущерба для быстродействия? И второй вопрос: Как по другому это можно организовать? | |
|
|
|
|
|
|
|
для: cyberface
(03.09.2006 в 18:48)
| | Нет, так точно не пойдет, т.к. при таком запросе выдаст всех подчиненных из паралельных веток. А этого не надо. | |
|
|
|
|
|
|
|
для: tAleks
(03.09.2006 в 18:03)
| | А нельзя просто вывести начальника и подчиненых таким запросом:
SELECT * FROM tbl WHERE id_boss >= $id_users
|
? | |
|
|
|
|
|
|
|
для: tAleks
(03.09.2006 в 18:03)
| | Да может вызвать, но если нужна скорость при такой сложной иерархии, наверное стоит как-то по другому организовать данные. | |
|
|
|
|
|
|
|
для: cheops
(01.09.2006 в 22:11)
| | Это ведь тогда получиться большое количество отдельных запросов.... А если иерархическая структура состоит из более чем 1000 записей? Не вызовет ли это излишнюю нагрузку и медленное выполнение? | |
|
|
|
|
|
|
|
для: tAleks
(01.09.2006 в 17:48)
| | Можно поступить следующим образом
<?php
function funct($id_users)
{
$query = "SELECT * FROM tbl WHERE id_boss = $id_users";
$res = mysql_query($query);
if(!$res) exit(mysql_error());
if(mysql_num_rows($res) > 0)
{
while($table = mysql_fetch_array($res))
{
echo $table['name']."<br>";
funct($table['id_users']);
}
}
}
?>
|
Функции следует передать перевичный ключ человека для которого необходимо узнать его подчинённых. | |
|
|
|
|
|
|
|
для: cheops
(01.09.2006 в 08:48)
| | Таблица users такая:
------------------------------
id_users | name | id_boss
------------------------------
1 | Иванов | Null
2 | Петров | 1
3 | Сидоров | 1
4 | Устинов | 2
5 | Кочнев | 2
------------------------------
|
Т.е. Иванов самый верхний босс
Петров и Сидоров подчиняются Иванову
Устинов и Кочнив подвиняются Петрову и т.д.
Надо чтобы если мы выбираем Иванова, выводилась вся оранизация, т.к. он самый верхний босс.
Если выбираем Петрова, то выводилась только та организация которая подчиняется тольок ему, т.е. Устинов и Кочнев. и все кто под Устиновым и Кочневым до конца (если таковые есть) | |
|
|
|
|
|
|
|
для: tAleks
(31.08.2006 в 16:20)
| | Приведите тогда структуру вашей таблицы - как осуществляется связь? | |
|
|
|
|
|
|
|
для: cheops
(31.08.2006 в 12:39)
| | что это такое и как это сделать? Расскажите пожалуйста по подробнее. Очень надо. | |
|
|
|
|
|
|
|
для: tAleks
(30.08.2006 в 20:38)
| | Можно осуществить рекурсивный спуск... | |
|
|
|
|