View difference between Paste ID: hy5YqcMB and 5dDQVFdL
SHOW: | | - or go back to the newest paste.
1
/*
2
    1. Najdi gi sifrite i iminjata na site vraboteni i imeto na pretstavata
3
       vo koja igrale glavna uloga za koja se prodadeni bileti zza odrzuvanje
4
       na folema scena kako redovna pretstava.
5
*/
6
7
SELECT V.V, IMEV, IMEP
8
FROM (((VRABOTENI V JOIN ULOGI U ON V.V=U.V)
9
       JOIN PRETSTAVI P ON U.P=P.P)
10
       JOIN BILETI B ON B.P=P.P)
11
WHERE U.IMA_ULOGA='glavna' AND B.STATUS='redovna' AND B.SCENA='golema';
12
13
/*
14
    2. Najdi go akterot koj ucestvuval vo najgolem broj na pretstavi
15
*/
16
SELECT V, IMEV
17
FROM ULOGI NATURAL JOIN VRABOTENI 
18
GROUP BY V, IMEV
19
HAVING COUNT(*) = (SELECT MAX(COUNT(*))
20
                    FROM ULOGI
21
                    GROUP BY V
22
                    );
23
                    
24
25
/*
26
    3. Najdi go imeto na akterot so najvisok prosecen honorar
27
*/
28
SELECT IMEV
29
FROM ZARABOTUVA NATURAL JOIN VRABOTENI
30
GROUP BY V, IMEV
31
HAVING AVG(HONORAR) >= ALL(SELECT AVG(HONORAR)
32
                           FROM ZARABOTUVA
33
                           GROUP BY V
34
                          );
35
                          
36
/*
37
    3. Version 2:
38
39
SELECT IMEV
40
FROM VRABOTENI
41
WHERE V IN (SELECT V
42
            FROM ZARABOTUVA
43
            GROUP BY V
44
            HAVING AVG(HONORAR) >= ALL(SELECT AVG(HONORAR)
45
                                       FROM ZARABOTUVA
46
                                       GROUP BY V
47
                                      )  
48
            );
49
*/
50
            
51
            
52
/*
53
    4. Da se vrati pregled na brojot na razlicni pretstavi sto se igrale posebno 
54
       za sekoj grad, sortirani po imeto na gradot.
55
*/
56
57
SELECT GRAD, COUNT(DISTINCT P)
58
FROM BILETI NATURAL JOIN TEATRI
59
GROUP BY GRAD
60
ORDER BY GRAD;
61
            
62
63
/*
64
    5. Prikazi gi pretstavnicite za koi vkupniot profit od prodazba na bileti
65
       e pogolem od vkupnata suma isplatena kako honorar
66
*/
67
SELECT IMEP
68
FROM PRETSTAVI
69
WHERE P IN (SELECT P
70
            FROM BILETI B
71
            GROUP BY P
72
            HAVING SUM(CENA*PRODADENI) > (SELECT SUM(HONORAR)
73
                                          FROM ZARABOTUVA
74
                                          WHERE P = B.P
75
                                          GROUP BY P
76
                                          )
77
);
78
79
80
81
/*
82
    Dopolnitelno 1: Prikazi gi iminjata na produktite koi ne pripagjaat vo
83
    kategorijata parfemi, i nivnata cena e pogolema barem od eden produkt od 
84
    kategorijata parfemi.
85
*/
86
SELECT PRODUCTNAME
87
FROM PRODUCTS
88
WHERE CATEGORYID NOT IN (SELECT CATEGORYID
89
                         FROM CATEGORIES
90
                         WHERE CATEGORYNAME='Perfumes'
91
                         )
92
      AND PRODUCTPRICE > ANY (SELECT CATEGORYID
93
                         FROM CATEGORIES
94
                         WHERE CATEGORYNAME='Perfumes'
95
                         );
96
                         
97
/*
98
    Dopolnitelno 2: Prikazi ja preststavata so najgolema posetenost.
99
*/
100
SELECT IMEP
101
FROM PRETSTAVI
102
WHERE P IN (SELECT P
103
            FROM BILETI
104
            GROUP BY P
105
            HAVING SUM(PRODADENI) >= ALL(SELECT SUM(PRODADENI)
106
                                         FROM BILETI
107
                                         GROUP BY P
108
                                         )
109
            );