powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Создание древовидной выборки по плоской таблице
3 сообщений из 3, страница 1 из 1
Создание древовидной выборки по плоской таблице
    #39850143
Stalker4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi All,

SQL Anywhere 12.0.x или 17.0.x.

Есть таблица
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE "dba"."CORRESPONDENCE" (
        "IDENTTY" INTEGER NOT NULL DEFAULT AUTOINCREMENT,
        "MASTERCODE" INTEGER NOT NULL,
        "MASTERTYPE" INTEGER NOT NULL,
        "SLAVECODE" INTEGER NOT NULL,
        "SLAVETYPE" INTEGER NOT NULL,
        CONSTRAINT "PK_CORRESPONDENCE" PRIMARY KEY ( "IDENTITY" ASC )
)

MASTERCODE+MASTERTYPE+SLAVECODE+SLAVETYPE - уникально и не может повторяться.

В этой таблице содержаться ссылки на два вида документа.
MASTERTYPE (SLAVETYPE) это вид документа (1 или 2).
MASTERCODE (SLAVECODE) это код документа.

MASTER - это документ в котором вводится ссылка другой документ, SLAVE - это документ, на который вводится ссылка в MASTER-документе.

Есть три документа
1) CODE=2 (TYPE=1)
2) CODE=3 (TYPE=2)
3) CODE=4 (TYPE=1)

В документе 2 ссылка на документ 1, а в документе 3 ссылка на документ 2.

IDENTITYMASTERCODEMASTERTYPESLAVECODESLAVETYPE1322124132
По сути тут содержаться данные дерева, но в плоском виде.

Мне надо получить дерево вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
(1)
  |
  |
  |--(2)
       |
       |
       |-(3)

С помощь. временной таблицы и SP с рекурсивным вызовом я могу сделать по этой таблице такое дерево в виде структуры
ID,SUB_ID,MASTERCODE,MASTERTYPE,SLAVECODE,SLAVETYPE

Но можно ли сделать это в виде запроса WITH с рекурсией ?
...
Рейтинг: 0 / 0
Создание древовидной выборки по плоской таблице
    #39850970
pand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Создание древовидной выборки по плоской таблице
    #39851612
Stalker4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pandStalker4,
Такой вариант подойдет ?
Может и подойдет, только как его приспособить к моей структуре данных ?
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Создание древовидной выборки по плоской таблице
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (1): Анонимы (1)
Пользователи онлайн (11): Анонимы (8), Yandex Bot, Google Bot 1 мин., Bing Bot 3 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]