|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Всем доброго времени суток! Если есть возможность, подскажите, пожалуйста, как выйти из проблемы с решением задачи: Дана таблица из двух столбцов ACTION и CODE, в каждом из которых хранятся списки чисел, разделённых пробелами. Создать запрос для разделения данных. например, для таблицы actioncode1000 1100.10 900841000 841100 841111700 500 400 4 923400 923411 Результат должен быть: n_list n_posactioncode101000 1100.10 900 841000 841100 841111 11000841000 21100.10841100 390084111120700 500 400 4923400 923411 1700923400 2500923411 3400 44 В результате выборки приняты обозначения: N_LIST — порядковый номер списка в исходной таблице, N_POS — порядковый номер числа в списке. Основным из условий решения задачи также является - невозможность использования аналитических функций и sys_guid. привожу свое решение(до куда оно дошло): Код: 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.
Проблема в том, что такой вариант выводит большое количество дублей. Пример вывода для первого набора значений: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Подскажите, пожалуйста, как из них выбрать нужные строки с сохранением сортировки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 13:47 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
12с ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 14:33 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Elic, а есть ли возможность сделать без cross apply, насколько я понимаю, появился он только в 12с, у нас же курс по 11g ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 14:49 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Elic, и спасибо вам огромное и за это!) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 14:58 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
kochhar Elic, а есть ли возможность сделать без cross apply, насколько я понимаю, появился он только в 12с, у нас же курс по 11g Код: 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.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 14:59 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Пропустил n_pos: Код: 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.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 15:01 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
kochhar у нас же курс Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Первая строчка останется тебе в качестве домашнего задания. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 15:02 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
SY Пропустил ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 15:04 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Упс, прочитал по-диагонали. Иерархия без "использования аналитических функций и sys_guid": Код: 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. 35. 36. 37. 38. 39. 40. 41.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 15:22 |
|
иерархия и регулярные выражения
|
|||
---|---|---|---|
#18+
Elic, Ни в коем случае не претензия, извините, если звучало некорректно. Про rownum знаю, за вариант решения благодарю!) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2019, 15:30 |
|
|
start [/forum/topic.php?fid=52&fpage=58&tid=1881759]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 139ms |
0 / 0 |