|
|
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
есть иерархический запрос и нужна сортировка внутри каждого уровня ! где там вставить order by (или еще чего ?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2003, 12:16 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
/topic/21662 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2003, 12:20 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
а что если сложный запрос ? select (case when ID_PROJECT_USER_PARENT is null then '' else ID_USER end) as ID, (case when ID_PROJECT_USER_PARENT is null then JOB_TITLE else (select '.' || NM from V_USERS where ID=ID_USER) end) as NM, ID_PROJECT_USER_PARENT from PROJECT_USER where ID_PROJECT=3 connect by prior ID_PROJECT_USER=ID_PROJECT_USER_PARENT start with ID_PROJECT_USER_PARENT is null ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2003, 14:22 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
Ну в 9-ке без проблем, а как в 8-ке сразу не скажу. Если только шаманить с индексами и самим запросом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2003, 14:58 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
Зачем так усложнять запрос этими "case" - когда можно обойтись и NVL2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2003, 15:30 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
Пардон, я неправильно указал порядок следования в функции:If expr1 is not null, NVL2 returns expr2. If expr1 is null, NVL2 returns expr3. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 08:52 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
In Oracle9i, there is a new "order siblings by" in order to sort a hierarchical query. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 09:48 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
В том-то и дело, что это не Девяткаi !!! а когда пишу такой запрос (где данные из двух таблиц выбираются ) выдает ошибку : ORA-01437 cannot have join with CONNECT BY Cause: A join operation was specified with a CONNECT BY clause. If a CONNECT BY clause is used in a SELECT statement for a tree-structured query, only one table may be referenced in the query. Action: Remove either the CONNECT BY clause or the join operation from the SQL statement. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2003, 09:54 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2003, 10:13 |
|
||
|
Как сортировать дерево
|
|||
|---|---|---|---|
|
#18+
Вам же уже дали ссылку на обсуждение этого вопроса. Посмотрите - и найдёте. На этом форуме было уже много похожих обсуждений с кучей примеров. Общий принцип - создайте индекс (PARENT,CAPTION) и хинтом в запросе укажите на необходимость его использования. Иногда получается без хинта (Oracle сам использует указанный индекс), но гарантии никакой. Например, это может работать, а после analise table перестать ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2003, 10:14 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32105501&tid=1991820]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 499ms |

| 0 / 0 |
