Projekt z predmetu DSDS

Tvorba dotazov

 

1. Vypíš klientov s uvedením procedúr, ktoré absolvovali.

 

select k.meno, k.priezvisko, rp.tel_cislo, cp.nazov_procedury

from klient k, cennik_procedur cp, rezervacie_procedur rp

where k.id_klienta=rp.id_klienta

and rp.id_procedury=cp.id_procedury

order by k.priezvisko;

 

MENO       PRIEZVISKO           TEL_CISLO            NAZOV_PROCEDURY

––––––––––––––––––––––––––––––––––––––––––––––––––––––––-

Jozefina   Baluchova            038/749 32 24        Anti-age vikend

Jozefina   Baluchova            038/749 32 24        Liecebny balik MINI

Jozefina   Baluchova            038/749 32 24        Balik Fit

Malgorzata Czepczyk             423 25 10              Vodny svet

Malgorzata Czepczyk             423 25 10              Liecebny balik

Malgorzata Czepczyk             423 25 10              Aphrodite vikend

Bozena     Durickova            043/422 02 28       Aphrodite Love Exclusive

Ladislav   Hodas                041/549 80 75            Relax Classic

Ladislav   Hodas                041/549 80 75            Antistresovy balik

Anna       Koporcova            052/442 21 00        Relax Spa Sensation

Roman      Kubo                 057/776 41 73           Relax Exclusive

Roman      Kubo                 057/776 41 73           Zdravy chrbat

Bartolomej Kusnir               056/679 73 43        Beauty Anticellu

Bartolomej Kusnir               056/679 73 43        Aphrodite vikend

Alois      Muller               012 110 50                    Vodny svet

Alois      Muller               012 110 50                    Beauty Vital

Alois      Muller               012 110 50                    Balik Fit

Alois      Muller               012 110 50                    Anti-age Exclusive

Alois      Muller               012 110 50                    Liecebny balik

Alois      Muller               012 110 50                   Antistresovy balik

Jozef      Ochodnican           041/421 42 73       Balik Fit

Jozef      Ochodnican           041/421 42 73       Liecebny balik MINI

Frantisek Person               041/549 33 91         Liecebny balik MINI

Frantisek Person               041/549 33 91         Vodny svet

Frantisek Person               041/549 33 91         Antistresovy balik

Frantisek Person               041/549 33 91         Relax Spa Sensation

Jiri       Polert               599 099 717                     Aphrodite Love Exclusive

Hilde      Schneider            0304 172 400            Beauty Vital

Hilde      Schneider            0304 172 400            Liecebny balik

Hilde      Schneider            0304 172 400            Balik Fit

Antonia    Sulovcova            041/763 75 25       Beauty Anticellu

 

2. Vypíš všetky apartmány s uvedením ubytovacieho zariadenia, v ktorom sa nachádzajú.

 

select u.pocet_lozok, h.hotel

from ubytovanie u, hotel h

where u.id_hotela=h.id_hotela

and pocet_lozok='apartman'

order by hotel asc;

 

POCET_LOZOK          HOTEL

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

apartman             Aphrodite

apartman             Aphrodite

apartman             Laura

apartman             Laura

apartman             penzion Antik

apartman             penzion Antik

apartman             Velka Fatra

apartman             Velka Fatra

apartman             Villa Flora

apartman             Villa Flora

apartman             Villa Margareta

apartman             Villa Margareta

 

3. Vypíš tie rezervácie ubytovania, ktoré pripadajú na dátum od 14. 02. 2010 s uvedením informácií o klientovi.

 

select k.meno, k.priezvisko, ru.rezervacie_od, hotel, u.pocet_lozok

from klient k, rezervacie_ubytovania ru, hotel h, ubytovanie u

where k.id_klienta=ru.id_klienta

and ru.id_zariadenia=u.id_zariadenia

and u.id_hotela=h.id_hotela

and u.pocet_lozok='apartman'

and ru.rezervacie_od>='14.02.2010';

 

MENO       PRIEZVISKO           REZERVAC                  HOTEL                        POCET_LOZOK

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––-

Alois      Muller                                  26.06.10                      Aphrodite                    apartman

Jiri          Polert                        26.08.10                    Aphrodite                    apartman

 

4. Vypíš klientov z Rakúska.

 

select k.meno, k.priezvisko, m.mesto, s.stat

from klient k, stat s, mesto m

where k.id_statu=s.id_statu and k.id_mesta=m.id_mesta

and s.stat='Rakusko'

order by k.priezvisko;

 

MENO       PRIEZVISKO           MESTO                          STAT

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

Alois          Muller                    Wien                           Rakusko

 

5. Vypíš ubytovacie zariadenie s uvedeným počtom lôžok a ceny na noc, ktorým prislúcha údaj viac ako 4 noci.

 

select h.hotel, u.pocet_lozok, u.cena_noc, u.pocet_noci

from hotel h, ubytovanie u

where h.id_hotela=u.id_hotela

and pocet_noci = 'od 4 noci';

 

 

HOTEL                POCET_LOZOK            CENA_NOC POCET_NOCI

––––––––––––––––––––––––––––––––––––––––––––––––––––-

Aphrodite            2-lozkova                       123                      od 4 noci

Aphrodite            2-lozkova standard      86              od 4 noci

Aphrodite            apartman                      146                       od 4 noci

Aphrodite            pristelka                         21                       od 4 noci

Velka Fatra          1-lozkova                       41                        od 4 noci

Velka Fatra          2-lozkova                        59                       od 4 noci

Velka Fatra         2-lozkova standard       109           od 4 noci

Velka Fatra          apartman                       126          od 4 noci

Velka Fatra          pristelka                          20                      od 4 noci

Villa Flora          1-lozkova                           26                      od 4 noci

Villa Flora          2-lozkova                           49                      od 4 noci

Villa Flora          apartman                          64                      od 4 noci

Villa Flora          pristelka                             18                     od 4 noci

Villa Margareta      2-lozkova                     53                       od 4 noci

Villa Margareta      apartman                     76                      od 4 noci

Villa Margareta      pristelka                       18                      od 4 noci

Mala Fatra           1-lozkova                         24                     od 4 noci

Mala Fatra           2-lozkova                         43                     od 4 noci

Mala Fatra           pristelka                           15                     od 4 noci

penzion Antik        1-lozkova                       23          od 4 noci

penzion Antik        2-lozkova                       39          od 4 noci

penzion Antik        apartman                       53          od 4 noci

penzion Antik        pristelka                         15          od 4 noci

Laura                1-lozkova                              28        od 4 noci

Laura                2-lozkova                              43        od 4 noci

Laura                apartman                              59        od 4 noci

Laura                pristelka                                15       od 4 noci

 

6. Vypíš tie rezervácie ubytovania, ktoré začínajú od 01. 09. 2010.

 

select k.priezvisko, ru.rezervacie_od, ru.rezervacie_do, h.hotel, u.pocet_lozok

from klient k, rezervacie_ubytovania ru, hotel h, ubytovanie u

where k.id_klienta=ru.id_klienta

and ru.id_zariadenia=u.id_zariadenia

and u.id_hotela=h.id_hotela

and rezervacie_od >'01.09.2010'

and pocet_lozok = 'pristelka'

order by priezvisko desc;

 

PRIEZVISKO           REZERVACIE_OD REZERVACIE_DO HOTEL                POCET_LOZOK

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––-

Mudra                                13.09.10              17.09.10          penzion Antik        pristelka

Czepczyk                20.09.10              25.09.10          Velka Fatra            pristelka

 

 

7. Vypočítaj celkovú cenu ubytovania.

 

select k.priezvisko, h.hotel, ru.pocet_noci_spolu, u.cena_noc, ru.pocet_noci_spolu*u.cena_noc as celkova_cena

from klient k, hotel h, rezervacie_ubytovania ru, ubytovanie u

where k.id_klienta=ru.id_klienta

and u.id_zariadenia=ru.id_zariadenia

and u.id_hotela=h.id_hotela

order by k.priezvisko;

 

PRIEZVISKO           HOTEL                POCET_NOCI_SPOLU   CENA_NOC     CELKOVA_CENA

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––-

Baluchova            Aphrodite                    7                            123                              861

Czepczyk             Velka Fatra                  5                            20                                100

Durickova            Mala Fatra                   2                            28                                56

Hodas                   Laura                            4                          15                                60

Koporcova           Villa Margareta          3                            18                                54

Kubo                     Villa Flora                     4                          26                                104

Kusnir                   penzion Antik               4                          23                                92

Mudra                  penzion Antik               4                           15                                60

Muller                  Aphrodite                     10                                     146                              1460

Ochodnican        Aphrodite                      6                           86                               516

Person                 Mala Fatra                     7                                     15                               105

Polert                  Aphrodite                      3                           156                             468

Saga                    Villa Flora                       3                                     18                                54

Schneider          Velka Fatra                    8                           41                                328

Sulovcova           Aphrodite                      3                           133                              399

 

create view tabulka_1 as

select k.priezvisko, h.hotel, ru.pocet_noci_spolu, u.cena_noc, ru.pocet_noci_spolu*u.cena_noc as celkova_cena

from klient k, hotel h, rezervacie_ubytovania ru, ubytovanie u

where k.id_klienta=ru.id_klienta

and u.id_zariadenia=ru.id_zariadenia

and u.id_hotela=h.id_hotela

order by k.priezvisko;

 

8. Vypíš procedúry s uvedením ceny a klienta, ktorý procedúru absolvoval.

 

select k.meno, k.priezvisko, cp.nazov_procedury, cp.cena_procedury

from klient k, cennik_procedur cp, rezervacie_procedur rp

where k.id_klienta=rp.id_klienta

and rp.id_procedury=cp.id_procedury

order by k.priezvisko;

 

 

 

MENO       PRIEZVISKO           NAZOV_PROCEDURY                CENA_PROCEDURY

–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––-

Jozefina   Baluchova            Anti-age vikend                                                96

Jozefina   Baluchova            Liecebny balik MINI                             27

Jozefina   Baluchova            Balik Fit                                                451

Malgorzata Czepczyk             Vodny svet                                                     10

Malgorzata Czepczyk             Liecebny balik                                    40

Malgorzata Czepczyk             Aphrodite vikend                                58

Bozena     Durickova            Aphrodite Love Exclusive                     335

Ladislav   Hodas                Relax Classic                                                      27

Ladislav   Hodas                Antistresovy balik                                              219

Anna       Koporcova            Relax Spa Sensation                             45

Roman      Kubo                 Relax Exclusive                                                  31

Roman      Kubo                 Zdravy chrbat                                          132

Bartolomej Kusnir               Beauty Anticellu                                               262

Bartolomej Kusnir               Aphrodite vikend                                   58

Alois      Muller               Vodny svet                                                 10

Alois      Muller               Beauty Vital                                               64

Alois      Muller               Balik Fit                                                                 451

Alois      Muller               Anti-age Exclusive                                     335

Alois      Muller               Liecebny balik                                           40

Alois      Muller               Antistresovy balik                                      219

Jozef      Ochodnican           Balik Fit                                                 451

Jozef      Ochodnican           Liecebny balik MINI                              27

Frantisek Person               Liecebny balik MINI                               27

Frantisek Person               Vodny svet                                             10

Frantisek Person               Antistresovy balik                                              219

Frantisek Person               Relax Spa Sensation                               45

Jiri       Polert                       Aphrodite Love Exclusive                      335

Hilde      Schneider            Beauty Vital                                            64

Hilde      Schneider            Liecebny balik                                                    40

Hilde      Schneider            Balik Fit                                                   451

Antonia    Sulovcova            Beauty Anticellu                                               262

 

create view tabulka_2 as

select k.meno, k.priezvisko, cp.nazov_procedury, cp.cena_procedury

from klient k, cennik_procedur cp, rezervacie_procedur rp

where k.id_klienta=rp.id_klienta

and rp.id_procedury=cp.id_procedury

order by k.priezvisko;

 

9. Vypočítaj celkovú cenu procedúr.

 

select k.meno, k.priezvisko,sum(t2.cena_procedury) as celk_cena_proced

from klient k, tabulka_2 t2

where k.priezvisko=t2.priezvisko

group by k.meno, k.priezvisko

order by k.priezvisko;

 

MENO       PRIEZVISKO           CELK_CENA_PROCED

––––––––––––––––––––––––––––––––––––––––

Jozefina   Baluchova                           574

Malgorzata Czepczyk                          108

Bozena     Durickova                           335

Ladislav   Hodas                                  246

Anna       Koporcova                            45

Roman      Kubo                                  163

Bartolomej Kusnir                             320

Alois      Muller                                  1119

Jozef      Ochodnican                         478

Frantisek Person                              301

Jiri       Polert                                     335

Hilde      Schneider                          555

Antonia    Sulovcova                        262

 

create view tabulka_3 as

select k.meno, k.priezvisko,sum(t2.cena_procedury) as celk_cena_proced

from klient k, tabulka_2 t2

where k.priezvisko=t2.priezvisko

group by k.meno, k.priezvisko

order by k.priezvisko;

 

10. Vypočítaj celkovú cenu pobytu.

 

select k.meno, k.priezvisko, t3.celk_cena_proced+t1.celkova_cena as celk_cena_pobyt

from klient k, tabulka_1 t1, tabulka_3 t3

where k.priezvisko=t1.priezvisko

and t1.priezvisko=t3.priezvisko

order by k.priezvisko;

 

MENO       PRIEZVISKO           CELK_CENA_POBYT

–––––––––––––––––––––––––––––––––––––––

Jozefina   Baluchova                          1435

Malgorzata Czepczyk                                     208

Bozena     Durickova                         391

Ladislav   Hodas                                306

Anna       Koporcova                          99

Roman      Kubo                                  267

Bartolomej Kusnir                              412

Alois      Muller                                  2579

Jozef      Ochodnican                          994

Frantisek Person                               406

Jiri       Polert                                                  803

Hilde      Schneider                             883

Antonia    Sulovcova                         661

 

create view tabulka_4 as

select k.meno, k.priezvisko, t3.celk_cena_proced+t1.celkova_cena as celk_cena_pobyt

from klient k, tabulka_1 t1, tabulka_3 t3

where k.priezvisko=t1.priezvisko

and t1.priezvisko=t3.priezvisko

order by k.priezvisko;

 

11. Vypočítaj priemernú cenu pobytu.

 

select avg(celk_cena_pobyt) as priem_cena_pobyt

from tabulka_4;

 

PRIEM_CENA_POBYT

–––––––––––––––––––

      726,461538

 

12. Zaokrúhli priemernú cenu pobytu na celé čísla nahor.

 

select ceil(avg(celk_cena_pobyt)) as zaokr_priem_cena

from tabulka_4;

 

ZAOKR_PRIEM_CENA

–––––––––––––––––––

             727

 

13. Vypíš najlacnejší pobyt.

 

select meno, priezvisko, celk_cena_pobyt as najlacnejsi_pobyt

from tabulka_4

where celk_cena_pobyt = (select min(celk_cena_pobyt) from tabulka_4);

 

MENO       PRIEZVISKO           NAJLACNEJSI_POBYT

––––––––––––––––––––––––––––––––––––––––

Anna       Koporcova                           99

 

14. Vypíš najdrahší pobyt.

 

select meno, priezvisko, celk_cena_pobyt as najdrahsi_pobyt

from tabulka_4

where celk_cena_pobyt = (select max(celk_cena_pobyt) from tabulka_4);

 

MENO       PRIEZVISKO           NAJDRAHSI_POBYT

–––––––––––––––––––––––––––––––––––––––

Alois      Muller                          2579

 

15. Vypíš klientov, ktorých priezvisko začína na K.

 

select k.meno, k.priezvisko

from klient k

where k.priezvisko like 'K%'

order by k.priezvisko;

 

MENO       PRIEZVISKO

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

Anna       Koporcova

Roman      Kubo

Bartolomej Kusnir

 

16. Vypíš PSČ a k nemu príslušné mesto.

 

select concat (k.psc,m.mesto) as psc_mesto

from mesto m, klient k

where k.id_mesta=m.id_mesta;

 

PSC_MESTO

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

066 01Humenne

915 01Nove Mesto nad Vahom

958 01Partizanske

024 04Kysucke Nove Mesto

038 61Vrutky

059 81Dolny Smokovec

076 62Dvorianky

013 14Kamenna Poruba

036 01Martin

010 01Zilina

1020Wien

104 07Berlin

701 38Ostrava

31-034Krakow

013 13Rajecke Teplice

Vyhľadávanie

© 2009 Všetky práva vyhradené.