Commit 0e402974 authored by K9272's avatar K9272
Browse files

H7

parent 104ea316
# Viikko 7 Alikyselyt, näkymät ja indeksointi
## Tehtävä 1 [2p]
A . Tee näkymä Turku, joka hakee students-taulusta kaikki turkulaiset opiskelijat. Sarakkeista tulostetaan mukaan järjestyksessä seuraavat: firstname, lastname, eyecolor ja incomes. Testaa näkymän toiminta kokeilemalla sitä.
![](H7/T1A.png)
B. Tee näkymä Oliot, joka tulostaa kaikki students-taulun opiskelijoiden nimet yhdessä sarakkeessa muodossa Etunimisukunimi. Esim. Kenguru, Tinosaurus, jne. Vain ensimmäinen merkki voi tulostua isolla (suuraakkonen, versaali). Sarakkeen otsikko tulee olla myös Oliot. Näkymää käytettäessä oliot tulee tulostaa aakkosjärjestyksessä. Testaa näkymän toiminta kokeilemalla sitä. Vastauksessa tulee olla näkyvillä näkymän luonti ja sen testaaminen.
![](H7/T1B.png)
Tehtävä 2 [4p]
A. [2p] Tee näkymä KaupunkiKeskiarvoTulot joka tulostaa opiskelijoiden keskiarvotulot kaupungeittain. Tulostuksessa näytetään kunkin kaupungin nimi ja kaupunkikohtaiset keskiarvotulot ja sarakkeiden otsikot tulee olla Kaupunki ja KAtulot. Kotikaupungittomia ei oteta mukaan tähän näkymään. Näkymää käytettäessä kaupungit tulee lajitella keskiarvotulon perusteella laskevassa järjestyksessä. Testaa näkymän toiminta kokeilemalla sitä. Vastauksessa tulee olla näkyvillä näkymän luonti ja sen testaaminen.
![](H7/T2A.png)
B. [2p] Tee näkymä Stipendiehdokkaat jonka avulla voidaan tulostaa 4 parasta opintosuoritusta. Riveittäin näkyy opiskelijan sukunimi, etunimi, kurssi ja kurssiarvosana, kuten alla mallissa. Arvosanan lisäksi lajitteluehdot ovat järjestyksessä kurssin nimi (ASC), sukunimi (ASC) ja etunimi(ASC). Testaa näkymän toiminta kokeilemalla sitä. Vastauksessa tulee olla näkyvillä näkymän luonti ja sen testaaminen.
```
+----------+-----------+-------------+-------+
| lastname | firstname | coursename | grade |
+----------+-----------+-------------+-------+
| Guru | Ken | Ohjelmointi | 5 |
| Guru | Ken | Ruotsi | 5 |
| Ana | Ruut | Tietokannat | 5 |
| Guru | Ken | Tietokannat | 5 |
+----------+-----------+-------------+-------+
4 rows in set (0.01 sec)
```
![](H7/T2B.png)
## Tehtävä 3 [3p]
A. Hae ne opiskelijat (suku- ja etunimellä), joilla on sama kotikunta kuin Ken Gurulla. Ken Gurun kotikuntaa ei tiedetä kyselyä kirjoitettaessa (se voi olla mikä tahansa). Käytä alikyselyä.
![](H7/T3A.png)
B. Hae pienituloisimmat opiskelijat. Pienintä palkkaa ei tiedetä kyselyä kirjoitettaessa. Tulossarakkeina suku- ja etunimi sekä tulot. Käytä alikyselyä.
![](H7/T3B.png)
C. Hae opiskelijan 2007 (= studentID) suoritettujen opintojaksojen nimet. Käytä alikyselyä.
![](H7/T3C.png)
## Tehtävä 4 [4p]
A. [2p] Hae niiden kaupunkien nimet, joiden opiskelijoista ainakin yksi on suorittanut Ohjelmointi-kurssin.
![](H7/T4A.png)
B. [2p] Hae opiskelijan 2007 (= studentID) suoritettujen opintojaksojen nimet käyttäen EXISTS-alikyselyä.
![](H7/T4B.png)
## Tehtävä 5 [2p]
Luo nk. 3 tähden paksu indeksi SQL-kyselylle:
```
SELECT lastname, firstname, incomes
FROM students
WHERE hometown = 1
ORDER BY taxrate DESC;
```
```
CREATE INDEX i_paccsu ON students(hometown, taxrate, lastname, firstname, incomes);
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment