Changes between Version 4 and Version 5 of AdvancedReports


Ignore:
Timestamp:
01/31/22 12:58:47 (3 years ago)
Author:
191215
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedReports

    v4 v5  
    11= Напредни извештаи од базата (SQL и складирани процедури)
    22
    3 == Најпопуларни локации за артисти (по опаѓачки редослед)
     3==  Да се најде направениот промет за артист во изминатата година
    44
    5 {{{#!sql
    6 select
    7         e.country,
    8         count(e.country) as num_of_events
    9 from events e
    10 group by e.country
    11 order by num_of_events desc
    12 
    13 }}}
    14 
    15 == Најпопуларни жанрови според број на артисти кои ги пеат (по опаѓачки редослед)
    16 
    17 {{{#!sql
    18 select
    19         asg.genre_id,
    20         count(asg.genre_id) as popularity
    21 from artist_sings_genres asg
    22 group by asg.genre_id
    23 order by popularity desc
    24 }}}
    25 
    26 ==  Да се најде направениот промет за артист во изминатата година
    275{{{#!sql
    286select
     
    3513}}}
    3614
    37 == Да се најдат каков тип на Артисти ангажирал Организаторот во последните 6 месеци
     15== Да се најдат каков тип на Артисти ангажирал Организаторот во последните 6 месеци.
     16
    3817{{{#!sql
    3918select distinct at2.name from
     
    5736
    5837== Да се најде просечно време кое било потрошено од страна на Организаторите и Артистите за да склучат договор (да платат).
     38
    5939{{{#!sql
    6040select avg(extract(day from o.completed_at-o.created_at)) from offers o
     
    6242}}}
    6343
     44== Во кој дел од денот се испраќаат најмногу барања за понуди.
     45
     46{{{#!sql
     47select concat(
     48                        avg(extract (hour from o.created_at))::int,
     49                        ':',
     50                        avg(extract (minute from o.created_at)):: int) as avgTime
     51from offers o
     52}}}
     53
    6454== Процент на успешно прифатени/реализирани понуди (во проценти).
     55
    6556{{{#!sql
    6657select ((select count(*) from offers o where completed_at notnull)/(select count(*) from offers o2)::float)*100;
    6758}}}
    6859
    69 == Најпопуларни типови на настани
     60== Број на барања испратени кон одреден артист за одреден настан.
     61
     62{{{#!sql
     63select a.user_id, count(o.artist_id) as num_of_offers_received
     64from artists a
     65join users u on u.id = a.user_id
     66join offers o on o.artist_id = a.user_id
     67join events e on e.id = o.event_id
     68where
     69        e.title = 'Igor''s Birthday' and
     70        u.username = 'test_artist_1'
     71group by a.user_id
     72}}}
     73
     74== Просечен број на коментари/пораки кои се потребни за да се постигне договор.
     75
     76{{{#!sql
     77-- Status 1 - dogovoreni
     78-- Status 2 - vo dogovor
     79-- Status 3 - otkazano
     80
     81with tempTable as (select
     82        oc.offer_id,
     83        count(oc.offer_id) as num_of_comments
     84from offer_comments oc
     85join offers as o on o.id = oc.offer_id and
     86                                        o.status = 1
     87group by oc.offer_id)
     88select
     89         avg(t.num_of_comments)
     90from tempTable as t
     91}}}
     92
     93== Најпопуларни жанрови според број на артисти кои ги пеат (по опаѓачки редослед)
     94
     95{{{#!sql
     96select
     97        asg.genre_id,
     98        count(asg.genre_id) as popularity
     99from artist_sings_genres asg
     100group by asg.genre_id
     101order by popularity desc
     102}}}
     103
     104== Најпопуларни локации за артисти (по опаѓачки редослед).
     105
     106{{{#!sql
     107select
     108        e.country,
     109        count(e.country) as num_of_events
     110from events e
     111group by e.country
     112order by num_of_events desc
     113
     114}}}
     115
     116== Просечен број на артисти со кои менаџерите менаџираат
     117
     118{{{#!sql
     119with tempTable as (select
     120        m.user_id,
     121        count(a.user_id)
     122from managers m
     123left join artists a on a.manager_id = m.user_id
     124group by m.user_id)
     125select
     126        avg(count)
     127from tempTable
     128}}}
     129
     130== Најпопуларни типови на настани.
     131
    70132{{{#!sql
    71133select et.name, count(*) as occurence from events e
     
    75137order by occurence desc;
    76138}}}
     139
     140
     141== Типови артисти според популарност (во опаѓачки редослед).
     142
     143{{{#!sql
     144select
     145        a_t.id,
     146        a_t.name,
     147        count (distinct a.user_id)
     148from artist_types a_t
     149left join artists a on a.artist_type_id = a_t.id
     150group by a_t.id, a_t.name
     151order by count desc
     152}}}