Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
есть несколько таблиц: A) id, name... B) id, A_id, name, C) id, B_id, name количество таблиц и колонок в них может быть разное Допустим получаю выборку из такого запроса: Код: sql 1. 2. 3. как на PHP из неё получить многоуровневый массив, чтоб его можно было привести в json и получить что-то подобное: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 10:35 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
Дормедонт Евлампиевич, тут не мешало бы привести результат выборки, из которой уже получается дерево... На всякий случай 20173267 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 13:46 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
примерная выборка Код: sql 1. 2. Спасибо за ваш пример. Вопрос по нему, а что если у fio будут другие свойства на уровне mainProject ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 14:39 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
по сути, у меня тут паттерн "Компоновщик", т.е. в дереве могут быть как листья, так и ветки.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 14:41 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
Дормедонт ЕвлампиевичСпасибо за ваш пример. Вопрос по нему, а что если у fio будут другие свойства на уровне mainProject ?Посмотрите fio = Петров Дормедонт Евлампиевичпо сути, у меня тут паттерн "Компоновщик", т.е. в дереве могут быть как листья, так и ветки..сложно сказать. У меня здесь не привычное дерево Parent-Child, а именно группировка, которая даёт структуру, похожую на дерево. Данные надо отсортировать или на сервере или на PHP (надо сравнить по скорости). А потом уже примените мой алгоритм, может чуть поправите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 18:05 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
SQLPowerUserПосмотрите fio = Петров У Петрова в колонке mainProject несколько значений. Мой вопрос был в том, что случится, если будет несколько колонок.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2018, 18:12 |
|
||
|
Привести выборку к дереву
|
|||
|---|---|---|---|
|
#18+
Структуру дерева лучше хранить в отдельной таблице, а сами записи в другой (или в других). Очень маловероятно что тебе нужна именно такая архитектура БД, которая получилась (думаю ещё со многими проблемами из-за неё столкнёшься). При такой структуре БД легче считать все 3 таблицы по одной и собрать их в многоуровневый массив уже на пыхе (через обычный foreach, при желании рекурсивно). Так можно будет нужный массив сделать даже когда у тебя будет 100 таблиц. Но ещё раз повторю, что сильно не рекомендую оставлять БД такой, если есть возможность её пересобрать правильно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2018, 19:16 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=39596738&tid=1460388]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 410ms |

| 0 / 0 |
