11.07.2015 Views

selykielen suunnittelu ja toteutus Samu Viita

selykielen suunnittelu ja toteutus Samu Viita

selykielen suunnittelu ja toteutus Samu Viita

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

56nan olio, jolla on oliotunnus o26. Jos oliolta kysytään ominaisuutta jota silläei ole, sulkujen sisällä oleva muuttu<strong>ja</strong> saa arvon null. Primitiiviä voi käyttäämyös siten, että ominaisuuteen viitataan muuttu<strong>ja</strong>lla, mutta esittelen tätä ominaisuuttamyöhemmin esimerkkikyselyjen yhteydessä.Kolmas primitiivi ilmaisee oliotyypin komposiittityyppien oliot. Arg1 onolio, joka kuuluu arg2:lla ilmaistuun oliotyypin komposiittityyppiin. Täten kyselyX is_composite_object_of pedalsantaa vastaukseksi esimerkkitietokannasta oliot seuraavilla oliotunnisteilla:o11,o16,o28,o12,o13,o25,o28,o33,o41,o37,o38, o39.Kolmannella primitiivillä ei voi etsiä komponenttiobjekte<strong>ja</strong>. Ne siis eivät oletoistensa käänteisprimitiivejä, vaikka intensionaalisten primitiivien kohdallais_composite_type_of <strong>ja</strong> is_component_type_of –primitiivit olivatkin. Tämä johtuusiitä, että primitiivin argumentit ovat eri tason argumentte<strong>ja</strong>. Primitiiviä voikäyttää myös siten, että arg1 on alustettu olioksi. Tällöin arg2 alustetaan arg1:stävastaavan oliotyypin komponenttityypillä. Myös molemmat argumentit voivatolla muuttujia. Tällöin primitiivi hakee tietokannasta kaikki oliot <strong>ja</strong> niitä vastaavienoliotyyppien komponenttityypit.Neljättä primitiiviä käytetään samaan tapaan kuin 3. primitiiviä, mutta seetsii annetun oliotyypin komponenttioliot.Viides <strong>ja</strong> kuudes primitiivi etsivät tietokannan osa-kokonaisuussuhteidenylimmän tason oliot <strong>ja</strong> perusoliot vastaavassa järjestyksessä. Niitä käytetäänsaman tapaan kuin intensionaalisia vastinprimitiivejäänkin, mutta ne palauttavatoliot tyyppien si<strong>ja</strong>an.6.2.3. Kyselyn tuloksen esittämisprimitiivit1. arg1 Where arg22. Min()3. Max()4. Count()5. Avg()Tämä ryhmä koostuu primitiiveistä, joilla voidaan vaikuttaa kyselyn tuloksenmuotoon <strong>ja</strong> tuottaa erilaisia aggregointitieto<strong>ja</strong> kyselyjen vastauksiin. Aggre-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!