SQL feladvany
Ezen a heten Oracle SQL-t veszunk, ehhez kapcsolodoan meg regebben talalkoztam a kovetkezo feladvannyal. Ha valaki "dinamikusan" meg tudja oldani, a feladvany szerint 1 "sima" selecttel, akkor az kuldje be a trukkot commentbe!
Szerintem dinamikusan nem lehet (sima selecttel), statikusan meg hulyeseg. PL/SQL-es megoldasok kozott "hangszorot" sorsolunk ki! :)
Meglepetes kulondijert jelentkezhet aki a "power" gombot az asztal ala, terd magassagba tette! ma 3* sikerult kilonom a gepet...
2 Comments:
En tudom, hogy van megoldas, mert mar csinaltam ilyesmit. Mar letre is hoztam a tablat, be is toltottem az adatokat. Mindjart kezdem irni a queryt, remelem nem zavarnak meg a munkatarsaim (amugy udvozlet Kelsterbachbol!).
Ha addig jon egy post, hogy ne lojjem le a poent, akkor csak egy emailt kuldok Marcinak.
Magamtol idaig jutottam el:
SELECT jtime, level, sys_connect_by_path(src,'-') utvonal
FROM travel
WHERE dest LIKE 'London'
START WITH src LIKE 'Budapest'
CONNECT BY prior dest LIKE src;
Ez kiirja az osszes lehetseges eljutast (nocycle-t nem vette be, de a konret peldanal ez nem okozott gondot :) ).
Sajnos nem sikerult osszesitenem az eljutasi idoket. Lehet, hogy ezt a 9.2-m nem is tudja, csak a 10g? Vagy az sem? Azt olvastam, hogy a 10g-vel jottek be ehhez kapcsolod plusz kifejezesek, de sajnos azon nem tudom tesztelni.
Googlelel talaltam egy-ket megoldast, ezek temporary tablakkal vagy pl/sql -lel dolgoznak, de valahogy nekem az az erzesem, hogy meg lehet ezt oldani ezek nelkul is, csak mara befejeztem a kiserletezgetest.
Ha valakinek mar megvan a megoldas, legyszi elobb egy kis segitseget irjon!
Post a Comment
<< Home