Hausübung SQL Erste Doppelstunde

 

Hausübung SQL Zweite Doppelstunde

HOME

 

Erste Doppelstunde

Fr.1.

select * from tab

SQLWKS> select * from tab

      2>

TNAME                          TABTYPE CLUSTERID

------------------------------ ------- ----------

ARTIKEL                             TABLE            

BESTELLUNG                     TABLE             

BESTELLUNG_NEU2          TABLE            

BESTELLUNG_NEU3          TABLE            

EXPORTARTIKEL               TABLE            

HOERSAAL                          TABLE            

KUNDE                                 TABLE            

LEHRVERANSTALTUNG   TABLE            

MEINE_KUNDEN                 TABLE            

PRAKTIKUM                        TABLE            

STUDENT                              TABLE            

VORTRAGENDER                TABLE            

WIRD_BESUCHT_VON        TABLE            

13 Zeilen ausgewählt

 

Fr.2.

describe hoersaal

SQLWKS> describe hoersaal

Spaltenname                    Null?    Typ

------------------------------ -------- ----

HSNR                                      NOT NULL NUMBER(3)

ANZ_PERSONEN                   NOT NULL NUMBER(3)

 

Fr.3.

select * from vortragender

SQLWKS> select * from vortragender

     2>

SVNR       NACHNAME                  VORNAME                   STRASSE                   PLZ        ORT                     

---------- ------------------------- ------------------------- ------------------------- ---------- -------------------------

1202020374 Lindner                   Manfred                   Meiergasse 3                    1040 Wien                    

1156110378 Chalmers                  Alan                      Fleischmarkt 2                  5020 Salzburg                

1198220562 Eco                       Umberto                   Donaulände 4                    4040 Linz                    

2234281256 Kurz                      Robert                    Graben 2                        1010 Wien                    

4457030762 Focault                   Michel                    Bachweg 2                       8850 Murau                   

5 Zeilen ausgewählt

 

Fr.4.

create table Vortragender_hat_TelNr

(SVNR char(20) not null, TelNr char(20) not null)

SQLWKS> create table Vortragender_hat_TelNr

     2> (SVNR char(20) not null, TelNr char(20) not null)

     3>

Anweisung verarbeitet

 

 

insert into Vortragender_hat_TelNr

values ('2222 10101945', '0664/11122333');

insert into Vortragender_hat_TelNr

values ('4545 02021965', '0699/1114567');

insert into Vortragender_hat_TelNr

values ('7895 12121977', '0655/4377398');

 

SQLWKS> insert into Vortragender_hat_TelNr

     2> values ('2222 10101945', '0664/11122333');

1 Zeile verarbeitet.

SQLWKS> insert into Vortragender_hat_TelNr

     2> values ('4545 02021965', '0699/1114567');

1 Zeile verarbeitet.

SQLWKS> insert into Vortragender_hat_TelNr

     2> values ('7895 12121977', '0655/4377398');

1 Zeile verarbeitet.

 

Fr. 5.

rename Vortragender_hat_TelNr to Vtrg_TelNr

 

SQLWKS> rename Vortragender_hat_TelNr to Vtrg_TelNr

     2>

Anweisung verarbeitet

 

update Vtrg_TelNr

set SVNR='1111 11111111' where SVNR='2222 10101945'

 

SQLWKS> update Vtrg_TelNr

     2> set SVNR='1111 11111111' where SVNR='2222 10101945'

     3>

1 Zeile verarbeitet.

 

Fr. 6.

select Mtrnr,Nachname from student where Vorname like 'S%'

 

SQLWKS> select Mtrnr,Nachname from student where Vorname like 'S%'

     2>

MTRNR      NACHNAME                

---------- -------------------------

     19292 Huber                   

   9600329 Müller                  

2 Zeilen ausgewählt

 

Fr. 7.

select LVANr,Bezeichnung,Typ from LEHRVERANSTALTUNG where Bezeichnung like '%wissenschaft%' or Bezeichnung like 'Wissenschaft%'

 

SQLWKS> select LVANr,Bezeichnung,Typ from LEHRVERANSTALTUNG where Bezeichnung like '%wissenschaft%' or Bezeichnung like 'Wissenschaft%'

     2>

LVANR      BEZEICHNUNG                                        TY

---------- -------------------------------------------------- --

    400340 Einführung in das wissenschaftliche Arbeiten       VO

    400220 Wissenschaftstheorie                               UE

2 Zeilen ausgewählt

 

 

Fr.8.

select Nachname,Ort from Student where ort != 'Wien';

 

SQLWKS> select Nachname,Ort from Student where ort != 'Wien';

NACHNAME                  ORT                     

------------------------- -------------------------

Huber                     St. Pölten              

1 Zeile ausgewählt.

 

Fr. 9.

select LVANr,Bezeichnung from Lehrveranstaltung where LVANr = 300131 or LVANR = 400340 or LVANr = 400220

 

SQLWKS> select LVANr,Bezeichnung from Lehrveranstaltung where LVANr = 300131 or LVANR = 400340 or LVANr = 400220

     2>

LVANR      BEZEICHNUNG                                       

---------- --------------------------------------------------

    400340 Einführung in das wissenschaftliche Arbeiten     

    400220 Wissenschaftstheorie                             

    300131 Business Process Management                       

3 Zeilen ausgewählt

        

select Bezeichnung from Lehrveranstaltung order by Bezeichnung desc;

 

SQLWKS> select Bezeichnung from Lehrveranstaltung order by Bezeichnung desc;

BEZEICHNUNG                                      

--------------------------------------------------

Wissenschaftstheorie                             

Wirtschaftsinformatik                            

Marktforschung                                   

Einführung in das wissenschaftliche Arbeiten     

E-Business                                        

Business Process Management                      

6 Zeilen ausgewählt

 

 

Fr. 10.

select LVANr from Lehrveranstaltung where LVANr not in (select LVANr from wird_besucht_von)

 

SQLWKS> select LVANr

     2> from Lehrveranstaltung

     3> where LVANr not in (select LVANr from wird_besucht_von)

     4>

LVANR    

----------

0 Zeilen ausgewählt

 

HOME

Dokumentbeginn

Zweite Doppelstunde

Frage 1.

SELECT count (*) from Lehrveranstaltung where SVNR = 1202020374 

Oder:

SELECT count (LVANr) from Lehrveranstaltung where SVNR in 1202020374

 

SQLWKS> SELECT count (*) from Lehrveranstaltung where SVNR = 1202020374

     2>

COUNT(*) 

----------

         3

1 Zeile ausgewählt.

 

Frage 2.

 

select sum (Anz_Personen) from Hoersaal where Anz_Personen >0

 

oder:

select sum (Anz_Personen) from Hoersaal

 

SQLWKS> select sum (Anz_Personen) from Hoersaal where Anz_Personen >0

     2>

SUM(ANZ_PE

----------

       512

1 Zeile ausgewählt.

 

Zwischenfrage: Hörsaal mit max Kapazität

 

Select HSNr from Hoersaal where Anz_Personen in (select max (Anz_Personen) from Hoersaal)

 

SQLWKS> Select HSNr from Hoersaal where Anz_Personen in (select max (Anz_Personen) from Hoersaal)

     2>

HSNR     

----------

         1

         2

2 Zeilen ausgewählt

 

 

Frage 3.

 

select Mtrnr,Nachname from Student

where GebDat=(select min(GebDat) from Student s, Lehrveranstaltung l,

wird_besucht_von w

where s.Mtrnr = w.Mtrnr and l.LVANr = w.LVANr

and Bezeichnung = 'Business Process Management')

 

ODER.

select Mtrnr,Nachname from Student where GebDat=(select min(GebDat)

from Student , Lehrveranstaltung , wird_besucht_von

where Student.Mtrnr = wird_besucht_von.Mtrnr and Lehrveranstaltung.LVANr = wird_besucht_von.LVANr

and Bezeichnung = 'Business Process Management')

 

 

SQLWKS> select Mtrnr,Nachname from Student

     2> where GebDat=(select min(GebDat) from Student s, Lehrveranstaltung l,

     3> wird_besucht_von w

     4> where s.Mtrnr = w.Mtrnr and l.LVANr = w.LVANr

     5> and Bezeichnung = 'Business Process Management')

     6>

MTRNR      NACHNAME                

---------- -------------------------

   9600329 Müller                  

1 Zeile ausgewählt.

 

Frage 4.

 

select s.Mtrnr, s.Nachname, l.LVANr, l.Bezeichnung

from Student s, Vortragender v, Lehrveranstaltung l, wird_besucht_von wwhere l.LVANr = w.LVANr and v.SVNR = l.SVNR and v.Nachname = 'Lindner'

 

SQLWKS> select s.Mtrnr, s.Nachname, l.LVANr, l.Bezeichnung

     2> from Student s, Vortragender v, Lehrveranstaltung l, wird_besucht_von w

     3> where l.LVANr = w.LVANr and v.SVNR = l.SVNR and v.Nachname = 'Lindner'

     4>

MTRNR      NACHNAME                  LVANR      BEZEICHNUNG                                      

---------- ------------------------- ---------- --------------------------------------------------

   9908789 Meier                         300100 Wirtschaftsinformatik                            

     19292 Huber                         300100 Wirtschaftsinformatik                             

   9600329 Müller                        300100 Wirtschaftsinformatik                            

   9200192 Meyer                         300100 Wirtschaftsinformatik                            

    200393 Huber                         300100 Wirtschaftsinformatik                            

   9908789 Meier                         300129 E-Business                                       

     19292 Huber                         300129 E-Business                                        

   9600329 Müller                        300129 E-Business                                       

   9200192 Meyer                         300129 E-Business                                       

    200393 Huber                         300129 E-Business                                       

   9908789 Meier                         300131 Business Process Management                      

     19292 Huber                         300131 Business Process Management                      

   9600329 Müller                        300131 Business Process Management                      

   9200192 Meyer                         300131 Business Process Management                      

    200393 Huber                         300131 Business Process Management                      

   9908789 Meier                         300131 Business Process Management                      

     19292 Huber                         300131 Business Process Management                      

   9600329 Müller                        300131 Business Process Management                      

   9200192 Meyer                         300131 Business Process Management                      

    200393 Huber                         300131 Business Process Management                       

20 Zeilen ausgewählt

 

Frage 5.

 

select  50-count(*) Freie_Plaetze

from wird_besucht_von where LVANr = '300131'

 

SQLWKS> select  50-count(*) Freie_Plaetze

     2> from wird_besucht_von where LVANr = '300131'

     3>

FREIE_PLAE

----------

        48

1 Zeile ausgewählt.

 

Frage 6.

 

select HSNr, count (*) Anzahl_LVA from Lehrveranstaltung group by HSNr

 

SQLWKS> select HSNr, count (*) Anzahl_LVA from Lehrveranstaltung group by HSNr

     2>

HSNR       ANZAHL_LVA

---------- ----------

         1          2

         2          2

         3          1

         4          1

4 Zeilen ausgewählt

 

Variante:  Alle die nur eine LV haben

 

select HSNr, count (*) Anzahl_LVA from Lehrveranstaltung group by HSNr having count(*)=1

 

SQLWKS> select HSNr, count (*) Anzahl_LVA from Lehrveranstaltung group by HSNr having count(*)=1

     2>

HSNR       ANZAHL_LVA

---------- ----------

         3          1

         4          1

2 Zeilen ausgewählt

 

Frage 7.

 

select l.Bezeichnung, count(Mtrnr) Teilnehmerzahl

from Lehrveranstaltung l, wird_besucht_von w

where l.LVANr = w.LVANr

group by l.LVANr, l.Bezeichnung

 

SQLWKS> select l.Bezeichnung, count(Mtrnr) Teilnehmerzahl

     2> from Lehrveranstaltung l, wird_besucht_von w

     3> where l.LVANr = w.LVANr

     4> group by l.LVANr, l.Bezeichnung

     5>

BEZEICHNUNG                                        TEILNEHMER

-------------------------------------------------- ----------

Wirtschaftsinformatik                                       1

E-Business                                                  1

Marktforschung                                              2

Business Process Management                                 2

Wissenschaftstheorie                                        2

Einführung in das wissenschaftliche Arbeiten                1

6 Zeilen ausgewählt

 

Frage 8.

 

select w.LVANr,Bezeichnung from Lehrveranstaltung l, wird_besucht_von w

where l.LVANr = w.LVANr group by w.LVANr,Bezeichnung

having count (w.Mtrnr) >=2

 

SQLWKS> select w.LVANr,Bezeichnung from Lehrveranstaltung l, wird_besucht_von w

     2> where l.LVANr = w.LVANr group by w.LVANr,Bezeichnung

     3> having count (w.Mtrnr) >=2

     4>

LVANR      BEZEICHNUNG                                      

---------- --------------------------------------------------

    300130 Marktforschung                                   

    300131 Business Process Management                      

    400220 Wissenschaftstheorie                             

3 Zeilen ausgewählt

 

Frage 9.

 

create view LVA_Uebersicht

as select l.LVANr, l.Typ, h.HSNr, h.Anz_Personen, v.Nachname

from Lehrveranstaltung l, Hoersaal h, Vortragender v,

where l.HSNr = h.HSNr and v.SVNR = l.SVNR

 

 

HOME

Dokumentbeginn