Changes between Version 4 and Version 5 of AdvancedReports


Ignore:
Timestamp:
01/25/22 01:07:46 (3 years ago)
Author:
193026
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedReports

    v4 v5  
    11= Напредни извештаи од базата
    22
    3 == Подредување на категориите според средна оценка од сите бизниси кои спаѓаат во нив (во која категорија се најдобро оценетите бизниси)
    43
    5 {{{#!sql
    6 select
    7         c.category_id,
    8         c.category_name,
    9         avg(r.review_stars) as category_avg_stars
    10 from review r
    11 inner join business b on
    12         r.business_id = b.business_id
    13 inner join category c on
    14         b.category_id = c.category_id
    15 group by c.category_id
    16 order by category_avg_stars desc
    17 }}}
    18 
    19 
    20 == Приказ на бројот на reviews според reviewer, подредени по опаѓачки редослед
    21 
    22 {{{#!sql
    23  select
    24         rr.reviewer_name,
    25         count(r.review_id) as num_of_reviews_by_reviewer
    26 from
    27         review r
    28 inner join reviewer rr on
    29         r.reviewer_id = rr.reviewer_id
    30 group by rr.reviewer_name
    31 order by num_of_reviews_by_reviewer desc
    32 }}}
    334
    345==  Подредување на категориите според средна оценка од сите бизниси кои спаѓаат во нив (во која категорија се најдобро оценетите бизниси), по тромесечие
     
    6940
    7041}}}
     42
     43
     44== Приказ на бројот на reviews според reviewer по тромесечие
     45
     46
     47{{{#!sql
     48drop view if exists num_of_reviews_by_reviewer_by_trimester cascade;
     49create view num_of_reviews_by_reviewer_by_trimester as
     50
     51
     52SELECT DISTINCT 
     53                                rrr2.reviewer_id,
     54                         rrr2.reviewer_name,
     55
     56
     57
     58CASE WHEN tabela.quarter=1 THEN tabela.num_of_reviews_by_reviewer ELSE 0 END AS first_q,
     59CASE WHEN tabela.quarter=2 THEN tabela.num_of_reviews_by_reviewer ELSE 0 END AS second_q,
     60CASE WHEN tabela.quarter=3 THEN tabela.num_of_reviews_by_reviewer ELSE 0 END AS third_q,
     61CASE WHEN tabela.quarter=4 THEN tabela.num_of_reviews_by_reviewer ELSE 0 END AS fourth_q
     62
     63
     64from
     65                review rrr
     66        inner join reviewer rrr2 on
     67                rrr.reviewer_id = rrr2.reviewer_id
     68       
     69join (
     70        select
     71                distinct r2.reviewer_name,
     72                r2.reviewer_id,
     73                extract(quarter FROM r.review_timestamp) AS quarter,
     74                count(r.review_id) as num_of_reviews_by_reviewer
     75        from
     76                review r
     77        inner join reviewer r2 on
     78                r.reviewer_id = r2.reviewer_id
     79        group by 1,2,3
     80) as tabela on rrr2.reviewer_id = tabela.reviewer_id
     81
     82
     83
     84}}}