The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск СУБД SQLite 3.37"
Отправлено пох., 30-Ноя-21 08:03 
> телефонии. +1 +1 123, +1 123 456, и вплоть до полных
> номеров. Их надо как раз таки тред-подобным образом агрегировать.

агрегировать - не то же самое что иметь доступ к древовидной структуре. Сам по себе элемент +1 123 456 никому не нужен и никакая строка в таблице традиционной базы данных ему бы не соответствовала - просто нечего в ней хранить.

Дарю:

with recursive
                                thread(id,replyid,level) as (
                                select id,replyto,0
                                from messages where id=$msgid
                                UNION ALL
                                select
                                        messages.id,messages.replyto,level+1
                                from messages,thread where replyto=thread.id
                                ORDER BY 3 DESC
                                ) select * from thread,messages
                                        where messages.id=thread.id ;

обратить внимание, что в этой базе нет никаких персистентных thread id  - за ненадобностью. Тред может начинаться (и начнется) в любом месте, а не от корня (за десять лет тот корень забыт всеми и давно уже о другом болтают)

"корень" отличается лишь тем что у него нет replyto и выше него некуда прыгнуть.

Да, это sqlite. Причем, как и полагается, какой-то совершенно доисторической версии.
Лет пять назад еще вполне себе работало.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру