Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
16.03.2013, 20:04
|
|||
|---|---|---|---|
|
|||
Интервалы |
|||
|
#18+
Здравствуйте. Помогите пожалуйста со следующим вопросом. Есть иерархия интервалов в ввиде дерева [1...................................................100] [1...........10]-----[65..................80] [1..3][4..7]----------------[70......80] -[2.3]-[5.7]---------------[70..75] Необходимо основании дерева сформировать одномерный массив интервалов с учетом всех дочерних нод [1][2..3][4][5..7][8..10][11...64][65..69][70..75][76..80][81..100] То-есть получается как-бы вертикальный срез слоев торта по границам интервалов. Пока даже не знаю как подступиться к этому. Есть какие-нибудь типовые решения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.03.2013, 20:23
|
|||
|---|---|---|---|
|
|||
Интервалы |
|||
|
#18+
White Owl, База данных на SQLite, соотв используется его SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2013, 00:16
|
|||
|---|---|---|---|
Интервалы |
|||
|
#18+
Для этой задачи совершенно не важно какой диалект SQL использовать. Это задача на организацию данных а не хитрости СУБД. И вообще: 13467826 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2013, 01:48
|
|||
|---|---|---|---|
|
|||
Интервалы |
|||
|
#18+
White Owl, Да, вы в частности правы (особенности реализации все-же присутствуют). После 6 часов разбора решил сделать следующее: 1. Из всех пар дерева родительский интервал/дочерний интервал (left join по ключу) насобирать обрезков левых непересекающихся их частей 2. + Юнион Из всех пар (1) добавить последний правый обрезок интервала, где он есть 3. + Юнион Добавить выборку по всем терминальным (конечным) интервалам В результате получаем развертку всех интервалов со всеми нужными свойствами из реальных записей таблиц На тестовой БД вроде отработала как нужно. Завтра на свежую голову попробую на рабочей БД. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/search_topic.php?author=InessaK&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
179ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 584ms |
| total: | 864ms |

| 0 / 0 |
