| Version 4 (modified by , 4 years ago) ( diff ) |
|---|
Напредни извештаи од базата (SQL и складирани процедури)
Најпопуларни локации за артисти (по опаѓачки редослед)
select
e.country,
count(e.country) as num_of_events
from events e
group by e.country
order by num_of_events desc
Најпопуларни жанрови според број на артисти кои ги пеат (по опаѓачки редослед)
select
asg.genre_id,
count(asg.genre_id) as popularity
from artist_sings_genres asg
group by asg.genre_id
order by popularity desc
Да се најде направениот промет за артист во изминатата година
select
SUM(t.stripe_price) from transactions t
inner join offers o on
o.artist_id = 6
and
t.offer_id = o.id
where extract (year from t.created_at) = extract (year from now() - interval '1 year');
Да се најдат каков тип на Артисти ангажирал Организаторот во последните 6 месеци
select distinct at2.name from
(
select o2.artist_id from users u
join organizers o on
o.user_id = u.id
join events e on
e.organizer_id = o.user_id
join offers o2 on
o2.event_id = e.id
where e.organizer_id = 11
and o2.completed_at notnull and o2.status = 2
)
as artists
join artists a on
artists.artist_id = a.user_id
join artist_types at2 on
at2.id = a.artist_type_id;
Да се најде просечно време кое било потрошено од страна на Организаторите и Артистите за да склучат договор (да платат).
select avg(extract(day from o.completed_at-o.created_at)) from offers o where completed_at notnull
Процент на успешно прифатени/реализирани понуди (во проценти).
select ((select count(*) from offers o where completed_at notnull)/(select count(*) from offers o2)::float)*100;
Најпопуларни типови на настани
select et.name, count(*) as occurence from events e
join event_types et on
et.id = e.event_type_id
group by et.name
order by occurence desc;
Note:
See TracWiki
for help on using the wiki.
