Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];

Вниз

MSSQL и деревья   Найти похожие ветки 

 
Michail Dalakov   (2003-12-28 16:40) [0]

В Oracle можно запросом вернуть древовидную структуру или определенную ветку дерева, возможно ли такое в MSSQL


 
just me   (2003-12-28 16:48) [1]

буквально пару дней назад была об этом ветка, поищи в архиве


 
Michail Dalakov   (2003-12-28 17:05) [2]

To [1],
Спасибо нашел, но честно говоря мало что полезного, насколько, я понял деревья строились на клиенте, и насколько я понял имея в базе два поля ID и PARENT_ID MSSQL не позволяет построить иерархическую структуру одним SQL запросом.


 
Delirium   (2003-12-28 17:29) [3]

Совершенно верно, в MSSQL нет базовых операторов для развёртки деревьев, однако простенький цикл и временная таблица решают эту проблему ни чуть не хуже Oracle.


 
Michail Dalakov   (2003-12-28 17:54) [4]

To Delirium
В таком случае лучше завести HASH поле в котором будет храниться путь и строить дерево на клиенте за один проход


 
Delirium   (2003-12-28 18:00) [5]

Такое поле надо будет поддерживать, что обязательно скажется на производительности... Хотя у каждого свои подходы 8)


 
Michail Dalakov   (2003-12-28 18:30) [6]

Конечно, надо поддерживать, если нет групповых операций над узлами, то уменьшение производительности несущественно, это и есть та плата за поледующее быстродействие - построение за один проход, если таблица довольно большая и не использовать SmartLoad, то это единственный вариант


 
Delirium   (2003-12-28 18:34) [7]

Увы, в тех задачах, где мне приходилось строить деревья, узлы не только меняли родителей на одном уровне, но и меняли сам уровень. Так что оставалось только оринетироваться на идентификатор предка и потоянно "бегать" вверх и вниз :)

P.S. Я пошёл пить водку, с новым годом! ;)


 
Michail Dalakov   (2003-12-28 18:43) [8]

Всем спасибо!
Всех с новым годом!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.004 c
14-83251
Думкин
2004-01-04 07:25
2004.01.26
С Днем Рождения! 4 января.


8-83217
VJar
2003-09-22 21:48
2004.01.26
Как найти конец GIF-изображения?


14-83277
TURKDL
2004-01-04 12:25
2004.01.26
Настройка операционной системы NT


14-83261
fag2000
2004-01-05 14:03
2004.01.26
DCOM


1-83144
goga
2004-01-15 10:47
2004.01.26
XPManifest





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский