Autor | Zpráva | ||
---|---|---|---|
peta Profil |
#1 · Zasláno: 5. 5. 2008, 13:30:16 · Upravil/a: peta
Potreboval bych vypsat z databaze sumu kreditu pro obor a predmet a celkovou sumu kreditu.
potreboval bych do jednoho pridat navic sloupec kr_all ktery by se ziskal, kdyby se z puvodniho dotazu smazal posledni radek z group by b.os_cislo, a to: g.cisoboru Samozrejme odstranit carku na predchozim radku. Mohl by mi nekdo rici, jak je treba dotaz upravit? V techto slozitych dotazech uz ztracim prehled, vytvarel jej kolega, ktery tomu take zrovna moc nerozumi a nevim, jak na nej prisel. Puvodni dotaz vypada takto a je dost slozity, je to PHP kombinovane s Oracle. $query = " select b.os_cislo, a.jmeno, a.prijmeni, a.rod_cislo as rod_cislo, c.standard_rok as rocnik, f.cisp_kod as program, g.cisoboru as obor, sum (d.kredity_dos) as kr, from osoby a, studenti b, studenti_v_roce c, studenti_na_oboru_v_roce d, studijni_plany e, studijni_programy f, obory g where a.osobidno = b.osobidno and b.os_cislo = c.os_cislo and b.stpridno = f.stpridno and c.os_cislo = d.os_cislo and c.rok_platnosti = d.rok_platnosti and d.stplidno = e.stplidno and e.oboridno = g.oboridno and b.stav = 'S' and c.rok_platnosti = '".$r."' and c.os_cislo = b.os_cislo and e.kreditne = 'A' and c.os_cislo like 'F%' ".($c>0?" AND c.standard_rok = '".$c."' ":'')." group by b.os_cislo, a.jmeno, a.prijmeni, a.rod_cislo, c.standard_rok, f.cisp_kod, g.cisoboru having kr < ".$k." ORDER BY prijmeni ASC, jmeno ASC, rod_cislo ASC, kr ASC, obor ASC, program ASC "; momentalne mi to vypise tabulku OS_CISLO JMENO PRIJMENI ROD_CISLO ROCNIK PROGRAM OBOR KREDITY F507971 Barbora Abelová 812320 / 1123 1 B5341 5341R009 60 F506935 Radka Adamcová 812321 / 4123 2 N7105 7105T001 41 F505658 Alena Adamcový 812321 / 5123 3 B7105 7105R047 40 F506357 Martina Adámková 612311 / 6123 2 B7201 7201R004 72 F507422 Tereza Adámková 812313 / 5123 1 M7504 7504T 13 F507422 Tereza Adámková 812313 / 5123 1 M7504 7504T251 23 a ja bych potreboval, aby to u Tereza Adámková vypsalo na kazdem radku jeste soucet kreditu z obou dvou, nekdy i vice radku. |
||
Kcko Profil |
Hmm prepsat do na JOINY tak by se v tom clovek mozna i vyznal .. takhle ne
|
||
peta Profil |
#3 · Zasláno: 5. 5. 2008, 14:21:15
Kcko
Tak to mam stejny problem. Neco se nejak grupuje, je to sice pekne napsane, ale neumim s tim pracovat, ani nevim, kde k tomu dotazu prisel. Jako, mam vic reseni, muzu to treba poscitat v PHP a pak doplnit sloupec. Je to sice dramaticke a drasticke, ale tez funkcni. Zatim to tak udelam, treba nekdo prijde s necim lepsim. Zatim se mne nechce to prepisovat na joiny, protoze bych si musel vypsdat vsechny tabulky a zjistit, jak se co joinuje. Pro mne je ted podstatne, ze kdyz group by b.os_cislo, a.jmeno, a.prijmeni, a.rod_cislo, c.standard_rok, f.cisp_kod, g.cisoboru ...zmenim na group by b.os_cislo, a.jmeno, a.prijmeni, a.rod_cislo, c.standard_rok, f.cisp_kod ... tak mam ten soucet, ale prijdu o deleni na obory. Cili misto: F507422 Tereza Adámková 812313 / 5123 1 M7504 7504T 13 F507422 Tereza Adámková 812313 / 5123 1 M7504 7504T251 23 mam F507422 Tereza Adámková 812313 / 5123 1 M7504 36 a ja chci to i to cislo. Resp. si to vymyslel tak ten kolega. |
||
peta Profil |
#4 · Zasláno: 6. 5. 2008, 10:31:44
Tak uz je to pase, neni v tom dotazu vsechno, podle ceho vby se dali ziskat uplne soucty. Takze tim padem to nemuzu porovnavat. Proste si to budou muset udelat devuchy rucne, asi.
|
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0