SQL> SPOOL currently spooling to ülesanne_12.lst SQL> CREATE TABLE koduylesanded AS (SELECT * FROM scott.koduylesanded); Table created. SQL> COLUMN yliopilase_id FORMAT 999 SQL> COLUMN kursusekood FORMAT A8 SQL> COLUMN too_nr FORMAT 999 SQL> COLUMN yliopilase_id FORMAT 999 SQL> COLUMN punktid FORMAT 999 SQL> COLUMN failinimi FORMAT A8 SQL> SQL> SELECT * FROM koduylesanded; YLIOPILASE_ID KURSUSEK KUUPAEV TOO_NR FAILINIM PUNKTID ------------------------ -------- --------------- ------ -------- ------- 10020014 I319 01-JUN-03 1 t7.txt 10 10020015 I319 11-JUL-03 1 t8.txt 10 10020011 I319 11-JUN-04 2 t2.txt 7 10020013 I319 11-JUN-04 3 t3.txt 8
SQL> SPOOL currently spooling to ülesanne_05.lst SQL> --Leidke tabelite yliopilased, koduylesanded, oppeained abil iga tudengi keskmine “punktisaak” koduste tööde eest SQL> SELECT y.eesnimi, y.perenimi, round(avg(k.punktid),1) AS kesk_punkte FROM yliopilased y, koduylesanded k where y.id=k.yliopilase_id GROUP BY y.eesnimi, y.perenimi; EESNIMI PERENIMI KESK_PUNKTE ------------ ------------ ----------- Katrin Kask 5.4 Salme Saar 4.1 Liina Vaher 7.8 Kairi M„nd 6.6 SQL> --Samade tabelite põhjal leidke, mitu tööd on oracle-aine ülesannete kohta saadetud. Grupeerige ülesande numbri kaupa SQL> SELECT k.too_nr, count(k
lst SQL> COLUMN nimetus FORMAT A15 NEW_VALUE nimetus NOPRINT SQL> COLUMN oppejoud FORMAT A15 OLD_VALUE oppe NOPRINT SQL> COLUMN nimi FORMAT A15 SQL> COLUMN punktid FORMAT 999 SQL> TTITLE CENTER 'Aine: ' nimetus SKIP 1 SQL> BTITLE CENTER 'Oppejoud: ' oppe SKIP 1 SQL> BREAK on nimi SKIP SQL> SET feedback on SQL> COLUMN nimi heading "Nimi" SQL> COLUMN ulesanne heading "Ylesanne" SQL> COLUMN punktid heading "Punktid" SQL> COLUMN kuupaev heading "Kuupaev" SQL> --Kasutage tabeleid yliopilased, koduylesanded, oppeained ning koostage skript (programm) SQL> --mis küsib kasutajalt õppeaine nimetuse fragmendi (kasutades asendusmuutujaid) ja väljastab SQL> --selle õppeaine kohta saadetud kodutööd. Lehekülje päisesse kirjutage õppeaine nimetus ja SQL> --jalusesse vastava õppejõu nimi, nagu näidatud allpool SQL> SELECT o.oppejoud AS oppejoud, 2 o.nimetus AS nimetus, 3 y.eesnimi || ' ' || y.perenimi AS nimi, 4 k.too_nr AS ulesanne, k.punktid AS punktid, to_char(k.kuupaev, 'dd.mm.yyyy')
SQL> COLUMN sunniaeg FORMAT A15 SQL> COLUMN id format 999 SQL> COLUMN kaal FORMAT 999.99 SQL> COLUMN sugu FORMAT A4 SQL> SELECT * FROM talled; ID SUNNIAEG KAAL SUGU ---- --------------- ------- ---- 3 04-APR-17 01.41 7.29 J .04 PM 6 04-APR-17 01.44 6.37 U .50 PM 8 04-APR-17 01.45 5.84 U .17 PM 9 04-APR-17 01.45 9.26 J .33 PM SQL> --Moodustage vaade, mis selekteerib tabelitest yliopilased, oppeained ja koduylesanded oracle kohta saadetud kodutööde punktisummad SQL> CREATE VIEW oracle_punktid (nimi, punktid) AS 2 SELECT y.perenimi ||','|| y.eesnimi AS nimi, x.summa 3 FROM (SELECT yliopilase_id AS id, sum(punktid) AS summa, kursusekood 4 FROM scott.koduylesanded 5 GROUP BY yliopilase_id, kursusekood) x, scott.yliopilased y, 6 (SELECT kood FROM scott.oppeained o 7 WHERE nimetus='Oracle: SQL ja PL/SQL') kt 8 WHERE y.id=x.id AND kt.kood=x.kursusekood; View created. SQL> COLUMN nimi FORMAT A12
sqlplus scott/tiger@testdata select eesnimi, perenimi, emakeel, lpad('*',emakeel/5, '*') as diagramm from kandidaadid; select eesnimi, perenimi, round(months_between(sysdate, to_date(substr(isikukood, 2, 6), 'RRMMDD'))/12) as vanus from kandidaadid; lesanne 4------------------------------------------------------------------------------- -- sqlplus scott/tiger@testdata desc yliopilased; desc koduylesanded; desc lepikult.oppeained; select y.eesnimi, y.perenimi, k.kuupaev, k.too_nr, k.punktid as punkte,k.failinimi as fail from lepikult.yliopilased y, lepikult.koduylesanded k,lepikult.oppeained o where y.id=k.yliopilase_id and k.kursusekood=o.kood and o.nimetus ='Digitaalkommunikatsioon'; 2............................................................................... ........... select y.eesnimi, y.perenimi from lepikult