powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite: построение дерева.
8 сообщений из 8, страница 1 из 1
SQLite: построение дерева.
    #35841744
Фотография gds
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.
Решил сделать одно пользовательскую прогу. В качестве БД выбрал SQLite. Вопрос в следующем. Существуют ли в SQLite аналог вот этого запроса (Oracle):
Код: plaintext
1.
2.
3.
select id,parent_id,name from table1
start with parent_id = - 1 
connect by parent_id = prior id;
для построения дерева. например в базе записано так:
id parent_id name
1 -1 root
2 1 DB
3 1 FAQ
4 2 Oracle
5 3 Oracle
6 2 SQLIte
7 3 SQLite
надо что бы было так.
1 -1 root
2 1 DB
4 2 Oracle
6 2 SQLIte
3 1 FAQ
5 3 Oracle
7 3 SQLite

Рад буду любой помощи. Спасибо за ответы по сабжу.
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #35841759
Фотография gds
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по идеи можно выстраивать так
Код: plaintext
1.
2.
select id, parent_id, name from еид1
order by parent_id,id
но в таком случае в таблице можно будет хранить только одно дерево.

либо применять несколько селектов по типа сперва предки, а потом детки. Но с временем на построение такого дерева уйдет уйма времени.
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #35841836
Фотография gds
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел статейку . Щас посмотрю может поможет.
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #36219612
Фотография Алексей VN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше на клиенте упорядочивать.
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #36219668
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gdsСуществуют ли в SQLite аналог вот этого запроса (Oracle): Нет.

gdsпо идеи можно выстраивать так
Код: plaintext
1.
2.
select id, parent_id, name from еид1
order by parent_id,id

Нет. Порядок обхода дерева совсем не обязательно будет совпадать с порядком ИД.

Найди статью пор организацию дерева с помощью множеств. Если дерево небольшое, то это хороший вариант, т.к. сможешь получать потомков одним селектом.

P.S. Имхо дерево нужно для
1) Отображения пользователю. В этому случае на клиенте достаем по уровням.
2) Для каких-либо расчетов. В этом случае достаем его по уровням в х.п. или на клиенте. Т.к. хранимых процедур в твоем случае нет, то остается клиент :-)
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #36219696
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно сделать свою функцию, возвращающую список родительских ID и по нему сортировать.
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #36445788
orion700
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gds,

линк на статейку битый!

тоже интересует вопрос иерархических запросов в SQLite (аналог Oracle)
Удалось ли вам победить проблему?
...
Рейтинг: 0 / 0
SQLite: построение дерева.
    #36592783
Tolka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://article.gmane.org/gmane.comp.db.sqlite.general/17286/match=managing+trees+database
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite: построение дерева.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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