Vraag : Oracle SQL: Verspreid de waarde van de Ouder aan ALLE Kinderen tijdens de Gang van de Boom

O.k. zo hier is mijn problem.

I heeft een lijst met het zelf van verwijzingen voorzien toetreden (varkensoor) die hoofdzakelijk een de folderstructuur van Vensters opslaat:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
van de 
CREATE LIJST FOLDER 
(
 CHILD_FOLDER VARCHAR2 (100)
, PARENT_FOLDER VARCHAR2 (100)
, TOESTEMMING VARCHAR2 (100);
);

TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („COMPANY_HQ“, ONGELDIG, „F“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („U“, „COMPANY_HQ“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („HET“, „COMPANY_HQ“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („FINANCIËN“, „COMPANY_HQ“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („ONTWIKKELING“, „HET“, „W“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („TEST“, „HET“);
TUSSENVOEGSEL DE WAARDEN IN VAN DE FOLDER (CHILD_FOLDER, PARENT_FOLDER) („STEUN“, „HET“);


A snelle boomgang geeft me de overeenkomstige structuur:

1:
2:
3:
4:
select lpad („„, level*2,““) || child_folder structuur, toestemming
van folder
HET BEGIN MET PARENT_FOLDER IS ONGELDIG
VERBIND DOOR VROEGER CHILD_FOLDER = PARENT_FOLDER;


1:
2:
3:
4:
5:
6:
7:
8:
9:
STRUCTURE TOESTEMMING

  COMPANY_HQ F
    FINANCIËN
    U
    IT
      ONTWIKKELING W
      STEUN
      TEST

What die ik zou willen om via SQL (en ik vrij zeker ben Analytics zal moeten worden gebruikt) bereiken ben volg:

1. Elke ingang in de lijst van de FOLDER zou de waarde van het moeten verspreiden is toestemming neer aan ALLE kindeenheden. Merk op dat het niveau van de Wortel van „COMPANY_HQ“ de toestemmingswaarde van „F“ heeft en de kleinkindingang van „ONTWIKKELING“ heeft de toestemmingswaarde van „W“ en dit zijn de enige opgeslagen toestemmingswaarden. Het resultaat moet kijken als volgt:

STRUCTURE                  PERMISSION
---De TEST
van de STEUN W
COMPANY_HQ F
FINANCIËN (F)
u (F)
(F)
(F) (f) (W)/> (f) (W)

As u kunt zien, wijzen de waarden van (f) van (w) erop dat de waarde van bovengenoemd is geërfti (COMPANY_HQ en ONTWIKKELING respectievelijk).

So die ik mijn vraag is binnen het concept van SQL, is het mogelijk om een waarde van een ouder aan allen heb verondersteld neer te verspreiden het is kinderen?

Hope iemand kan helpen:)

Duncs

Antwoord : Oracle SQL: Verspreid de waarde van de Ouder aan ALLE Kinderen tijdens de Gang van de Boom

begin door te gebruiken
selecteer…, toestemming,
SYS_CONNECT_BY_PATH (toestemming, „; “)
VAN
 en vind een manier om uw resultaat te formatteren die dubbele waarden verwijderen en de steunen toevoegen
Andere oplossingen  
 
programming4us programming4us