|
|
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Всем, доброго времени суток. Подскажите, как добить выражение, что бы на выходе было 5 записей, 2 от первого селекта и 3 от второго? Ну и если не сложно, объясните почему получается 10 записей? Код: sql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:11 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Oracle 12c Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:22 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
dMazay82, у тебя в коннект бы не хватает условия однопутности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:28 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
AmKad, Надо на 10ке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:31 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
-2-, поменял на Код: sql 1. 2. 3. 4. 5. 6. выскакивает ORA-01436: цикл CONNECT BY в данных пользователя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:33 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
dMazay82выскакивает во времена десятки было суеверие проверять random на null. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:40 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Ну и что непонятно? Ты ведь нигде не указал кто чей родитель. Mедитируй над: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Если хочешь иерархию, то: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:43 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
SY, Гуд, а можно немного теории, зачем надо and prior sys_guid() is not null;? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:46 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
dMazay82AmKad, Надо на 10ке Или через иерархию как я показал, или через MULTISET: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:51 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
dMazay82SY, Гуд, а можно немного теории, зачем надо and prior sys_guid() is not null;? CONNECT BY LOOP это когда ты пришел туда где уже был а SYS_GUID() всегда дает новое значение, что создает иллюзию типа физически там уже был а логически нет. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2018, 22:55 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Можно проще. select regexp_substr(trim(temp), '\[Fld:(\s|\w)+\]', 1, level) from (select 'Hello people [Fld: First Name] [Fld: Middle Name] это 1й шаблон12345' temp from dual union select 'Hello people [Fld: Last Name][Fld: First Name][Fld: Email Address] это 2ой шаблон"' from dual) connect by regexp_substr(trim(temp), '\[Fld:(\s|\w)+\]', 1, level) is not null start with rownum = 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2018, 16:43 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
mibin, авторНу и если не сложно, объясните почему так получается если в union больше 2-х записей? ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2018, 17:01 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Stax, Вся проблема в том что он начал с начала с первой записи и обработал 2е записи, потом начал со второй и опять обработал 2е записи, отсюда и задвоение, когда мы указали что необходимо начать с первой записи то у него появилось определенная строка для старта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2018, 10:20 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
mibin, попробуйте 21667234 напр на табличке (юнион) с 5-мю строками start with rownum = 1 мало ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2018, 10:53 |
|
||
|
Что не так с regexp
|
|||
|---|---|---|---|
|
#18+
Stax, Да...точно, не учёл, что level вылетает за границу, там получилось что для каждой новой строчки нужен новый Level или всё объединить сразу. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2018, 11:55 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39697418&tid=1883489]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 343ms |

| 0 / 0 |
