|
|
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Например есть select '1,2,32,444,F,A' from dual Хотелось бы получить так: 1 2 32 444 F A Есть ли такая функция в Оракл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 10:55 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Izhivih, pivot/unpivot ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 10:56 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
split ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 10:57 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Спасибо все незнакомо, будем гуглить. Если не сложно можно простой пример? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 11:01 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Подробно вот . А так да, pivot/unpivot, но это с 11 оракла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 11:02 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
11 не подходит, тут 10.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 11:04 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
не стал мудорствовать сделал так: with t as ( select '1,2,32,444,F,A' str,',' delimiter from dual ) select * from t ,table( cast( multiset( select regexp_substr(t.str,'[^'||t.delimiter||',]+',1,level) -- с 10g from dual connect by regexp_substr(t.str,'[^'||t.delimiter||',]+',1,level) is not null -- c 10g -- для 11g лучше будет: -- level<=regexp_count(t.str,',') ) as sys.odcivarchar2list ) ) substring ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 11:28 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Izhivih, так не быстрее будет? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2014, 11:39 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Добрый день! Подскажите пожалуйста как можно разбить строку текста,в которой разделителем является нумерованный список с круглой скобочкой. Примеры строк: Aaaa 1) bbbbb 2) ccccc 3) DDDDD 1) AAAA 2) BBBB 3) CCCC 4) DDDD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 14:19 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Можно regexp_replace-ом поменять '[0-9]+\)' на регулярный разделитель и разбить как обычно Можно regexp_substr-ом выдергивать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 14:33 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Самое быстрое, что удалось найти. Найдено в Апексовых схемах Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вызов: Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 06:02 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Ерошевич Павел, Забыл про типы Код: plsql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 06:04 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Забыл еще сам APEX подтянуть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 09:15 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. Запрос этот кажется громоздким, касты, тейблы, джойн... Берем просто Код: plsql 1. 2. 3. Но не нравится дистинкт из-за замножения по коннект бай левел, ну и вообще замножение не нравится и первый вариант с ним изящно справляется. Но вопрос, нет возможности в самом connect by level убрать замножение там прикрутить connect by prior c nocycle какой-нибудь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 08:55 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Izhivih, Я когда-то вот так делал Код: plsql 1. 2. Ответ Код: xml 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 10:07 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
Приношу извинения автору наоброт надо... Строку в столбец а не столбец в строку.(как у меня) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 10:09 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
ConnectOrNotConnectЗапрос этот кажется громоздким, касты, тейблы, джойн...Ну так напиши один раз собственный pipelined генератор, котор Можно конечно глянуть логи stunnel, но по почерку видно, как какой-монструозный сервер приложений на их стороне на первый запрос разогревается невообразимо долго. Поскольку у них продукт купленый, сколько бы они вам не ездили по ушам, лучше он вряд ли станет, будете вы что-то замерять или нет. ый очень просто вызвать: Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 14:30 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
irbis_alЯ когда-то вот так делал И очень плохо делал. И если такой код у тебя в production то беги исправлять пока не перешел на 12C. WMSYS.WM_CONCAT недокументированная функция и меняла поведеие в разных версиях а в 12C вообще исчезла: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 15:11 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
SY, Вы знаете ну "чи не алгоритм"...ну заменю самописной функцией эту wmsys.wm_concat в Oracle 12том. (Любой начинающий на pl/sql её аналогию сможет написать) И автору топика посоветовал бы pipilined функцию сделать для его решения.(а не на простом классическом sqlЕ это "мучать") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 15:41 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
irbis_alну заменю самописной функцией эту wmsys.wm_concat в Oracle 12том. Вот и я о том-же: беги исправлять. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 17:10 |
|
||
|
Преобразовать строку в список
|
|||
|---|---|---|---|
|
#18+
ConnectOrNotConnect Код: plsql 1. 2. 3. 4. 5. 6. Запрос этот кажется громоздким, касты, тейблы, джойн... Берем просто Код: plsql 1. 2. 3. Но не нравится дистинкт из-за замножения по коннект бай левел, ну и вообще замножение не нравится и первый вариант с ним изящно справляется. Но вопрос, нет возможности в самом connect by level убрать замножение там прикрутить connect by prior c nocycle какой-нибудь. Код: 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. ...... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2017, 08:45 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1885484]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
166ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 489ms |

| 0 / 0 |
