Rekurzivny dotaz – Oracle – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Rekurzivny dotaz – Oracle – Fórum – Programujte.comRekurzivny dotaz – Oracle – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Grungy0
Super člen
26. 11. 2011   #1
-
0
-

Ahojte potreboval by som pomôcť s jedným selectom.

Mám tabuľku Tbl zo stĺpcami meno(PK) a skupina. Sú tam uložený užívatelia, ktorý patria do rôznych skupín, pričom aj skupina má jeden riadok v tejto tabuľky, čiže aj skupina je užívateľ. Takže skupina môže zas patriť do ďalšej skupiny a tak hierarchicky ďalej. Ak užívateľ/skupina patrí do istej skupiny tak v stĺpci skupina má názov tej jeho skupiny.

Teraz by som potreboval vypísať celú hierarchiu od určitého užívateľa napr Ferko, ale neviem ako na to.

Zatiaľ som sa dostal k tomuto:

Select b.meno FROM Tbl a, Tbl b WHERE a.meno='Ferko' AND (b.meno=a.meno OR a.skupina = b.meno);

ale to mi vypíše len skupinu o jednu úroveň vyššie.

Nemáte niekto nejaký nápad ako na to?

Nahlásit jako SPAM
IP: 188.123.100.–
Prvý náznak hlúposti, je pocit geniality.
zlz
~ Anonymní uživatel
634 příspěvků
26. 11. 2011   #2
-
+1
-
Zajímavé

Asi tak nějak

select id, meno, skupina from Tbl where meno = 'Ferko'
start with skupina is null
connect by prior id = skupina
Nahlásit jako SPAM
IP: 213.211.51.–
zlz
~ Anonymní uživatel
634 příspěvků
26. 11. 2011   #3
-
0
-

Vlastně asi ne :) Ale ty detaily už si nějak poladíš. Já to nemám kde vyzkoušet.

Nahlásit jako SPAM
IP: 213.211.51.–
Grungy0
Super člen
27. 11. 2011   #4
-
0
-

#2 zlz Vďaka za usmernenie, presne toto som celý čas hľadal. Riešenie má byť:

SELECT meno FROM Tbl
START WITH meno='Ferko'
CONNECT BY PRIOR skupina=meno;

Pre prípadných záujemcov o problematiku: http://www.adp-gmbh.ch/ora/sql/connect_by.html

Nahlásit jako SPAM
IP: 188.123.100.–
Prvý náznak hlúposti, je pocit geniality.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

Podobná vlákna

"Mysql dotaz v dotaz" — založil Tomáš Sedlmajer

Dotaz — založil RePRO

C++ dotaz — založil Darkweaver

Dotaz — založil Hermanek

Dotaz — založil Karel Malý

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý