Guest User

Untitled

a guest
Feb 9th, 2017
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.36 KB | None | 0 0
  1. create table korisnik(
  2.  
  3.  
  4.  
  5. korisnichkoID numeric not null unique,
  6.  
  7.  
  8.  
  9. korisnichkoIme varchar not null,
  10.  
  11.  
  12.  
  13. lozinka varchar(15) not null,
  14.  
  15.  
  16.  
  17. email varchar not null constraint pravilen_mail check(email similar to '%@%.com'),
  18.  
  19.  
  20.  
  21. primary key (korisnichkoID)
  22.  
  23.  
  24.  
  25. );
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33. create table clanarina(
  34.  
  35.  
  36.  
  37. clanarinaID numeric unique,
  38.  
  39.  
  40.  
  41. period numeric not null,
  42.  
  43.  
  44.  
  45. primary key (clanarinaID)
  46.  
  47.  
  48.  
  49. );
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65. create table domakjin(
  66.  
  67.  
  68.  
  69. clanarinaID numeric references Clanarina(clanarinaID) not null,
  70.  
  71.  
  72.  
  73. korisnichkoID numeric not null references Korisnik(korisnichkoID) unique,
  74.  
  75.  
  76.  
  77. slika numeric,
  78.  
  79.  
  80.  
  81. constraint pk_domakjin primary key (korisnichkoID, clanarinaID)
  82.  
  83.  
  84.  
  85. );
  86.  
  87.  
  88.  
  89.  
  90.  
  91. create table gostin(
  92.  
  93.  
  94.  
  95. embg varchar not null,
  96.  
  97.  
  98.  
  99. korisnichkoID numeric references korisnik(korisnichkoID),
  100.  
  101.  
  102.  
  103. clanarinaID numeric,
  104.  
  105.  
  106.  
  107. domakjinID numeric,
  108.  
  109.  
  110.  
  111. tip varchar,
  112.  
  113.  
  114.  
  115. primary key(korisnichkoID),
  116.  
  117.  
  118.  
  119. foreign key(domakjinID, clanarinaID) references domakjin (korisnichkoID, clanarinaID)
  120.  
  121.  
  122.  
  123. );
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131. create table oceni(
  132.  
  133. clanarinaID numeric,
  134.  
  135. domakjinID numeric,
  136.  
  137. gostinID numeric references gostin(korisnichkoID),
  138.  
  139. ocena int not null,
  140.  
  141.  
  142.  
  143. foreign key (domakjinID, clanarinaID) references domakjin(korisnichkoID, clanarinaID),
  144.  
  145. primary key (domakjinID, clanarinaID, gostinID, ocena)
  146.  
  147.  
  148.  
  149. );
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159. create table lokacija(
  160.  
  161.  
  162.  
  163. lokacijaID numeric not null unique,
  164.  
  165.  
  166.  
  167. grad varchar not null,
  168.  
  169.  
  170.  
  171. naselba varchar,
  172.  
  173.  
  174.  
  175. ulica varchar not null,
  176.  
  177.  
  178.  
  179. broj numeric not null,
  180.  
  181.  
  182.  
  183. domakjinID numeric,
  184.  
  185.  
  186.  
  187. clanarinaID numeric,
  188.  
  189.  
  190.  
  191. primary key (lokacijaID),
  192.  
  193.  
  194.  
  195. foreign key (domakjinID, clanarinaID) references domakjin (korisnichkoID, clanarinaID)
  196.  
  197.  
  198.  
  199. );
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207. create table prestoj(
  208.  
  209.  
  210.  
  211. gostinID numeric references korisnik (korisnichkoID) not null unique,
  212.  
  213.  
  214.  
  215. domakjinID numeric,
  216.  
  217.  
  218.  
  219. clanarinaID numeric,
  220.  
  221.  
  222.  
  223. cena numeric not null,
  224.  
  225.  
  226.  
  227. vremetraenje numeric not null,
  228.  
  229.  
  230.  
  231. constraint fk_domakjin foreign key (domakjinID, clanarinaID) references domakjin(korisnichkoID, clanarinaID),
  232.  
  233.  
  234.  
  235. constraint pk_prestoj primary key(gostinID, domakjinID, clanarinaID)
  236.  
  237.  
  238.  
  239. );
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255. create table online_Transakcija(
  256.  
  257.  
  258.  
  259. domakjinID numeric,
  260.  
  261.  
  262.  
  263. chlanarinaID numeric,
  264.  
  265.  
  266.  
  267. gostinID numeric,
  268.  
  269.  
  270.  
  271. embg_transakcija numeric not null unique,
  272.  
  273.  
  274.  
  275. tip_kartichka text not null,
  276.  
  277.  
  278.  
  279. smetka_primach numeric not null,
  280.  
  281.  
  282.  
  283. smetka_plakjach numeric not null,
  284.  
  285.  
  286.  
  287. foreign key (domakjinID, gostinID, chlanarinaID) references prestoj(domakjinID, gostinID, clanarinaID),
  288.  
  289.  
  290.  
  291. primary key(domakjinID, gostinID, chlanarinaID, embg_transakcija)
  292.  
  293.  
  294.  
  295. );
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311. create table privatnoSmestuvanje(
  312.  
  313.  
  314.  
  315. domakjinID numeric,
  316.  
  317.  
  318.  
  319. clanarinaID numeric,
  320.  
  321.  
  322.  
  323. naziv text not null,
  324.  
  325.  
  326.  
  327. parking boolean not null,
  328.  
  329.  
  330.  
  331. foreign key (domakjinID, clanarinaID) references domakjin(korisnichkoID, clanarinaID),
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339. primary key(domakjinID, clanarinaID)
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347. );
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363. create table hotel(
  364.  
  365.  
  366.  
  367. clanarinaID numeric not null,
  368.  
  369. domakjinID numeric not null,
  370.  
  371. hotelIme varchar,
  372.  
  373. parking bool not null,
  374.  
  375. dzvezdi numeric not null,
  376.  
  377.  
  378.  
  379. foreign key (domakjinID, clanarinaID) references domakjin (korisnichkoID, clanarinaID),
  380.  
  381.  
  382.  
  383. primary key(domakjinID, clanarinaID)
  384.  
  385.  
  386.  
  387. );
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403. create table spaCentar(
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411. spaID numeric not null unique,
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419. adresa text not null,
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427. bazen boolean not null,
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435. sauna boolean not null,
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443. clanarinaID numeric,
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451. hotelID numeric,
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467. primary key (spaID),
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475. foreign key(hotelID, clanarinaID) references hotel(domakjinID, clanarinaID)
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491. );
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515. create table stan(
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523. privatnoLiceID numeric,
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531. clanarinaID numeric,
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539. terasa bool,
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555. foreign key(privatnoLiceID, clanarinaID) references privatnoSmestuvanje(domakjinID, clanarinaID),
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563. primary key(privatnoLiceID, clanarinaID)
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571. );
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587. create table kukja(
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595. privatnoSmestuvanjeID numeric not null,
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603. clanarinaID numeric not null,
  604.  
  605.  
  606.  
  607.  
  608.  
  609.  
  610.  
  611. dvor bool,
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619. tip_greenje text,
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635. foreign key (privatnoSmestuvanjeID, clanarinaID) references privatnoSmestuvanje(domakjinID, clanarinaID),
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643. primary key (privatnoSmestuvanjeID, clanarinaID)
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659. );
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675. create table soba_kukja(
  676.  
  677.  
  678.  
  679. soba_kID numeric,
  680.  
  681.  
  682.  
  683. kukjaID numeric,
  684.  
  685.  
  686.  
  687. clanarinaID numeric,
  688.  
  689.  
  690.  
  691. broj_kreveti numeric,
  692.  
  693.  
  694.  
  695. tip_kreveti text,
  696.  
  697.  
  698.  
  699. foreign key (kukjaID, clanarinaID) references kukja(privatnoSmestuvanjeID, clanarinaID),
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707. primary key (kukjaID, clanarinaID,soba_kId)
  708.  
  709.  
  710.  
  711. );
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719. create table soba_hotel(
  720.  
  721.  
  722.  
  723. soba_hID numeric,
  724.  
  725.  
  726.  
  727. hotelID numeric,
  728.  
  729.  
  730.  
  731. clanarinaID numeric,
  732.  
  733.  
  734.  
  735. broj_kreveti numeric,
  736.  
  737. tip_kreveti text,
  738.  
  739.  
  740.  
  741.  
  742.  
  743. foreign key (hotelID, clanarinaID) references hotel(domakjinID, clanarinaID),
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751. primary key(hotelID, clanarinaID,soba_hID)
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759. );
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779. create table bungalov (
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787. bungalovID numeric not null unique,
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795. brojBungalov numeric not null,
  796.  
  797.  
  798.  
  799.  
  800.  
  801.  
  802.  
  803. hotelID numeric not null,
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811. clanarinaID numeric not null,
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827. primary key (bungalovID),
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835. foreign key (hotelID, clanarinaID) references hotel(domakjinID, clanarinaID)
  836.  
  837.  
  838.  
  839.  
  840.  
  841. );
  842.  
  843.  
  844.  
  845.  
  846.  
  847. alter table online_transakcija add iznos int;
  848.  
  849.  
  850.  
  851.  
  852.  
  853. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('1', 'Angela','angela12','angela@yahoo.com' );
  854.  
  855.  
  856.  
  857. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('2', 'Gogo','gogo12','gogo@yahoo.com' );
  858.  
  859.  
  860.  
  861. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('3', 'Anastasija','anastasija12','anastasija@yahoo.com' );
  862.  
  863.  
  864.  
  865. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('4', 'Olivera','olivera12','olivera@yahoo.com' );
  866.  
  867.  
  868.  
  869. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('5', 'Blagoj','blagoj12','blagoj@yahoo.com' );
  870.  
  871.  
  872.  
  873. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('6', 'Goran','goran12','goran@yahoo.com' );
  874.  
  875.  
  876.  
  877. insert into korisnik(korisnichkoID,korisnichkoIme,lozinka,email) values ('7', 'Bojana','bojana12','bojana@yahoo.com' );
  878.  
  879.  
  880.  
  881. insert into clanarina(clanarinaid,period) values ('1','3');
  882.  
  883.  
  884.  
  885. insert into domakjin(korisnichkoid,clanarinaid,slika) values ('1','1','0');
  886.  
  887. insert into domakjin(korisnichkoid,clanarinaid,slika) values ('5','1','10');
  888.  
  889.  
  890.  
  891.  
  892.  
  893. insert into lokacija(lokacijaid,grad,naselba,ulica,clanarinaid,domakjinid,broj) values ('1','Skopje','Gjorce','Socialisticka zora','1','1','49');
  894.  
  895.  
  896.  
  897. insert into lokacija(lokacijaid,grad,naselba,ulica,clanarinaid,domakjinid,broj) values ('4','Skopje','Centar','Makedonja','1','5','49');
  898.  
  899. insert into lokacija(lokacijaid,grad,naselba,ulica,clanarinaid,domakjinid,broj) values ('5','Skopje','Kisela Voda','Makedonja','1','5','49');
  900.  
  901.  
  902.  
  903.  
  904.  
  905. insert into hotel(clanarinaid,domakjinid,parking,dzvezdi,hotelIme) values ('1','1','true','4','Palas');
  906.  
  907.  
  908.  
  909. insert into soba_hotel(hotelID,clanarinaID,broj_kreveti,tip_kreveti,soba_hID) values ('1','1','2','Bracen','1');
  910.  
  911.  
  912.  
  913. insert into soba_hotel(hotelID,clanarinaID,broj_kreveti,tip_kreveti,soba_hID) values ('1','1','2','Bracen','2');
  914.  
  915.  
  916.  
  917. insert into soba_hotel(hotelID,clanarinaID,broj_kreveti,tip_kreveti,soba_hID) values ('1','1','2','Bracen','3');
  918.  
  919.  
  920.  
  921. insert into domakjin(korisnichkoid,clanarinaid,slika) values ('3','1','5');
  922.  
  923.  
  924.  
  925. insert into lokacija(lokacijaid,grad,naselba,ulica,clanarinaid,domakjinid,broj) values ('2','Skopje','Kozle','Lerinska','1','3','77');
  926.  
  927. insert into lokacija(lokacijaid,grad,naselba,ulica,clanarinaid,domakjinid,broj) values ('3','Skopje','Karposh','Lerinska','1','3','77');
  928.  
  929.  
  930.  
  931. insert into privatnoSmestuvanje(domakjinID, clanarinaID, naziv, parking) values('3', '1', 'Ansastasija Smeshtaj', '1');
  932.  
  933.  
  934.  
  935. insert into kukja(privatnoSmestuvanjeID, clanarinaID, dvor, tip_greenje) values('3', '1', '1', 'Parno');
  936.  
  937. insert into soba_kukja(kukjaID, clanarinaID, soba_kID, broj_kreveti, tip_kreveti) values('3', '1', '1', '2', 'Edinechen');
  938.  
  939. insert into soba_kukja(kukjaID, clanarinaID, soba_kID, broj_kreveti, tip_kreveti) values('3', '1', '2', '1', 'Brachen');
  940.  
  941.  
  942.  
  943. insert into gostin(embg,korisnichkoID,clanarinaid,domakjinID,tip) values ('123456679901','4','1','1','Student');
  944.  
  945.  
  946.  
  947. insert into gostin(embg,korisnichkoID,clanarinaid,domakjinID,tip) values ('123456679900','2','1','1','Turist');
  948.  
  949.  
  950.  
  951. insert into gostin(embg,korisnichkoID,clanarinaid,domakjinID,tip) values ('123456679902','6','1','3','Student');
  952.  
  953.  
  954.  
  955. insert into gostin(embg,korisnichkoID,clanarinaid,domakjinID,tip) values ('123456673902','7','1','3','Postojan');
  956.  
  957.  
  958.  
  959.  
  960.  
  961. insert into prestoj(gostinid,domakjinid,clanarinaid,cena,vremetraenje) values ('2','1','1','1000','2');
  962.  
  963. insert into prestoj(gostinid,domakjinid,clanarinaid,cena,vremetraenje) values ('4','1','1','6000','30');
  964.  
  965. insert into prestoj(gostinid,domakjinid,clanarinaid,cena,vremetraenje) values ('6','3','1','12000','15');
  966.  
  967. insert into prestoj(gostinid,domakjinid,clanarinaid,cena,vremetraenje) values ('7','3','1','2000','5');
  968.  
  969.  
  970.  
  971.  
  972.  
  973. insert into online_transakcija(domakjinid,chlanarinaid,gostinid,embg_transakcija,tip_kartichka,smetka_primach,smetka_plakjach, iznos) values ('1','1','2','1234123','master','1111','2222', '1000');
  974.  
  975.  
  976.  
  977. insert into spacentar(spaid,adresa,bazen,sauna,hotelid,clanarinaid) values ('1','karposh','true','false','1','1');
  978.  
  979.  
  980.  
  981. insert into oceni(domakjinID, clanarinaID, gostinID, ocena) values ('1', '1', '2', '5');
  982.  
  983.  
  984.  
  985. insert into oceni(domakjinID, clanarinaID, gostinID, ocena) values ('1', '1', '2', '4');
  986.  
  987.  
  988.  
  989. insert into oceni(domakjinID, clanarinaID, gostinID, ocena) values ('5', '1', '4', '5');
  990.  
  991.  
  992.  
  993. insert into oceni(domakjinID, clanarinaID, gostinID, ocena) values ('5', '1', '4', '3');
  994.  
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001. /*1. Најди ја просечната оцена ( од страна на гостите ) на домаќинiте што нудат приватно сместување.*/
  1002.  
  1003.  
  1004.  
  1005. select privatnoSmestuvanje.naziv, avg(oceni.ocena) from oceni, privatnoSmestuvanje, domakjin where (privatnoSmestuvanje.domakjinID, privatnoSmestuvanje.clanarinaID) = (domakjin.korisnichkoID, domakjin.clanarinaID) and (oceni.domakjinID, oceni.clanarinaID) = (domakjin.korisnichkoID, domakjin.clanarinaID) group by privatnoSmestuvanje.naziv;
  1006.  
  1007.  
  1008.  
  1009.  
  1010.  
  1011.  
  1012.  
  1013. /*2. Најди го максималнот износ направен при трансакција кон домаќинот со ИД = 1. */
  1014.  
  1015. select korisnik.korisnichkoime, max(online_transakcija.iznos) from online_transakcija, domakjin, korisnik where (domakjin.korisnichkoID, domakjin.clanarinaID) = (online_transakcija.domakjinID, online_transakcija.chlanarinaID) and domakjin.korisnichkoId= korisnik.korisnichkoid group by korisnik.korisnichkoime;
  1016.  
  1017.  
  1018.  
  1019. /* 3. Кој/и домаќин/и нуди сместување на најголем број локации?*/
  1020.  
  1021. select korisnichkoIme from korisnik,
  1022.  
  1023. (select domakjin.korisnichkoid as did, count(lokacija.lokacijaid) as broj_lokacii from lokacija, domakjin where (domakjin.korѝisnichkoid, domakjin.clanarinaid) = (lokacija.domakjinid, lokacija.clanarinaid) group by did) as vkupno,
  1024.  
  1025. (select max(pom_broj_lokacii) as max_lokacii from
  1026.  
  1027. (select count(lokacija.lokacijaid)as pom_broj_lokacii from lokacija, domakjin where (domakjin.korisnichkoid, domakjin.clanarinaid) = (lokacija.domakjinid, lokacija.clanarinaid) group by domakjin.korisnichkoid) as pom) as maximum
  1028.  
  1029. where vkupno.broj_lokacii = maximum.max_lokacii and korisnik.korisnichkoid = vkupno.did;
  1030.  
  1031.  
  1032.  
  1033. /* 4. Колкав процент гости (од вкупно гости кај сите домаќини)престојуваат кај домаќинот „Ангела“? */
  1034.  
  1035. select broj*100/vkupen_broj || '%' as procent from
  1036.  
  1037. (select count(prestoj.gostinid) as broj from prestoj, domakjin, korisnik where (prestoj.domakjinid, prestoj.clanarinaid) = (domakjin.korisnichkoid, domakjin.clanarinaid) and domakjin.korisnichkoid = korisnik.korisnichkoid and korisnik.korisnichkoime = 'Angela') as br,
  1038.  
  1039. (select count(gostin.embg) as vkupen_broj from gostin) as vkupno;
  1040.  
  1041.  
  1042.  
  1043. /* 5. Кој хотел располага со најголем број соби?*/
  1044.  
  1045. select hotel.hotelime from hotel,
  1046.  
  1047. (select soba_hotel.hotelid as hotelid, soba_hotel.clanarinaid as clid, count(soba_hotel.soba_hid) as broj_sobi from soba_hotel, hotel where (soba_hotel.hotelid, soba_hotel.clanarinaid) = (hotel.domakjinid, hotel.domakjinid) group by soba_hotel.hotelid, soba_hotel.clanarinaid) as count_sobi,
  1048.  
  1049. (select max(pom_broj_sobi) as max_sobi from
  1050.  
  1051. (select soba_hotel.hotelid, soba_hotel.clanarinaid, count(soba_hotel.soba_hid) as pom_broj_sobi from soba_hotel, hotel where (soba_hotel.hotelid, soba_hotel.clanarinaid) = (hotel.domakjinid, hotel.domakjinid) group by soba_hotel.hotelid, soba_hotel.clanarinaid) as pom
  1052.  
  1053. ) as maximum
  1054.  
  1055. where (hotel.domakjinid, hotel.clanarinaid) = (count_sobi.hotelid, count_sobi.clid) and count_sobi.broj_sobi = maximum.max_sobi;
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061. /* 6. Кој домаќин од Скопје има просечна оцена повисока од 3 од страна на гостите? */
  1062.  
  1063. select korisnichkoIme from korisnik inner join
  1064.  
  1065. (select domakjin.korisnichkoid as prosechni_id, domakjin.clanarinaid as prosechni_clanarina, avg(oceni.ocena) as prosechna_ocena from oceni, domakjin where (oceni.domakjinID, oceni.clanarinaID) = (domakjin.korisnichkoID, domakjin.clanarinaID) group by prosechni_id, prosechni_clanarina) as prosechni
  1066.  
  1067. on korisnik.korisnichkoid = prosechni_id and prosechni.prosechna_ocena > '3'
  1068.  
  1069. inner join lokacija on lokacija.domakjinid = korisnik.korisnichkoid and lokacija.grad = 'Skopje';
  1070.  
  1071.  
  1072.  
  1073. /* 7.Колкав процент на луѓе користат сместување во хотел */
  1074.  
  1075. select gosti_hotel.br_gosti*100/vkupno.vk_gosti from
  1076.  
  1077.  
  1078.  
  1079. (select count(gostin.korisnichkoid) as vk_gosti from gostin) as vkupno,
  1080.  
  1081.  
  1082.  
  1083. (select prestoj.domakjinid as did, prestoj.clanarinaid as clid, count(prestoj.gostinid) as br_gosti from prestoj, domakjin, hotel where (prestoj.domakjinid, prestoj.clanarinaid) = (domakjin.korisnichkoid, domakjin.clanarinaid) and (domakjin.korisnichkoid, domakjin.clanarinaid) = (hotel.domakjinid, hotel.clanarinaid) group by prestoj.domakjinid, prestoj.clanarinaid) as gosti_hotel;
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089. /* 8. Колкав процент на луѓе користат приватно сместување ?*/
  1090.  
  1091. select gosti_ps.br_gosti*100/vkupno.vk_gosti || '%' as procent_gosti from
  1092.  
  1093.  
  1094.  
  1095. (select count(gostin.korisnichkoid) as vk_gosti from gostin) as vkupno,
  1096.  
  1097.  
  1098.  
  1099. (select prestoj.domakjinid as did, prestoj.clanarinaid as clid, count(prestoj.gostinid) as br_gosti from prestoj, domakjin, privatnoSmestuvanje where (prestoj.domakjinid, prestoj.clanarinaid) = (domakjin.korisnichkoid, domakjin.clanarinaid) and (domakjin.korisnichkoid, domakjin.clanarinaid) = (privatnoSmestuvanje.domakjinid, privatnoSmestuvanje.clanarinaid) group by prestoj.domakjinid, prestoj.clanarinaid) as gosti_ps;
Add Comment
Please, Sign In to add comment