powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Обход дерева и запись данных в родителя
2 сообщений из 2, страница 1 из 1
Обход дерева и запись данных в родителя
    #39067479
k17
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
k17
Гость
Доброго времени суток друзья.
Сразу скажу что базы данных только начал изучать, поэтому возможно будет много тупых вопросов.

В базе имеется одна таблица которая содержит все дерево файловой системы(более 700тыс. записей). В каждой записи есть поле parent которое указывает на родителя(каталог), поле size в котором содержится информация о размере(файла или каталога) и поле iscatalog которое указывает на то что это каталог(true == каталог, false == файл).
Проблема в том что информацию о размере содержат только файлы, все каталоги имеют NULL.
Хотелось бы для каждого каталога посчитать размер содержащихся в нем данных и записать эти данные в size каталога одним запросом.
НО КАК??? Циклом? Рекурсией? подобные конструкции вообще есть в декларативном языке?
Единственное что приходит в голову это использовать SELECT, INSERT и императивный ЯП.
...
Рейтинг: 0 / 0
Обход дерева и запись данных в родителя
    #39067486
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
update t set f = (select sum(...) from t t2 where t.parent_id=t2.parent_id)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Обход дерева и запись данных в родителя
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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