|
|
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Добрый день! Есть таблица для построения дерева id (порядковый номер), id_parent, Short_Number(порядковый номер внутри родителя), unit_name, long_number как мне собрать для каждой строки таблицы порядковый номер вида 1.2.1...., в поле long_number , где последняя цифра это Short_Number ? дерево строится вот так: Код: plsql 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. 28. 29. 30. 31. то есть в Код: plsql 1. нужно получить 1. Имя1 1.1 Имя2 1.2 Имя3 2. Имя4 2.1 Имя5 2.1.1 Имя6 ... может и не перед построением дерева, а отдельным тригером, но это неважно. не могу сообразить как номер собрать оптимально, без извращений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 12:33 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-net, строить иерархию с помощью with ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 12:43 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 12:45 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 12:50 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Код: plsql 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. 28. 29. 30. 31. 32. 33. 34. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 13:00 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
AmKad, класс!! похоже оно, сейчас буду прикручивать себе, спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 13:30 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-net, Прикрутил к себе! Благодаря предложенному варианту, не надо формировать новый столбец long_number, номер формируется на лету. Классное решение, спасибо! Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Но есть ньюанс, как мне убрать номер с первых двух уровней? were при start with запихивать нельзя. Ну это мелочи. буду думать, спасибо еще раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 15:18 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-netНо есть ньюанс, как мне убрать номер с первых двух уровней? were при start with запихивать нельзя. Ну это мелочи. буду думать, спасибо еще раз. оставить (substr) после второй точки, не оно? ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 15:32 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Staxоставить (substr) после второй точки, не оно?По его формулировке может быть три варианта: оно, не оно и третий вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 15:39 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Stax, немного не оно. сейчас идет 1 Название1 1.1 Название2 1.1.1 Название3 ... без нарушения иерархии у названия1 и Название2 не должно быть номера. Должно выглядеть так: Название1 Название2 1 Название3 Отрезать substr надо как-то и 1, и 1.1 и 1.1. Читаю, но это наверное костыль... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 15:57 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-netДолжно выглядеть так: Название1 Название2 1 Название3 Отрезать substr надо как-то и 1, и 1.1 и 1.1. Читаю, но это наверное костыль...Достаточно писать номер только для level>2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 16:05 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 16:19 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
AmKad, -2- , ААА!! ОГОНЬ! Спасибо за разжевывание! все отлично сработало! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2018, 16:25 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
не сочтите за наглость... А если все же записать полученные данные, что не так делаю (ругается: SQL command not properly ended)? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. сам Select работает четко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 10:15 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
where до connect ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 10:24 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
нет, с connect все верно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 10:26 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-net, Тебе нужен merge. В твоем же случае если благодаря предикату не вернется ни одной строки, запрос обновит поле в null - держу пари это не ожидаемое тобой поведение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 10:27 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-net, А Вас не смущает что Вы ежа с ужем крестите? Код: plsql 1. Что такое AA в разрезе update ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 10:45 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
AmKad, получилось! Аж самому не верится Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 16:07 |
|
||
|
Порядковый номер элемента дерева.
|
|||
|---|---|---|---|
|
#18+
c-netAmKad, получилось! Аж самому не верится в update не верете? Вы скобками ошиблісь Код: plsql 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. ps я так понимаю, у детяти один родитель ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2018, 16:26 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39666690&tid=1883786]: |
0ms |
get settings: |
12ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 224ms |
| total: | 389ms |

| 0 / 0 |
