Changes between Version 9 and Version 10 of AdvancedReports


Ignore:
Timestamp:
02/09/26 00:39:23 (2 weeks ago)
Author:
213140
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedReports

    v9 v10  
    3232**JOIN на сите табели:**
    3333
    34 J1 ← P ⨝{P.id_user = U.id_user} U
    35 
    36 Ј2 ← Ј1 ⟕{P.id_user = C.id_patient} C
    37 
    38 Ј3 ← Ј2 ⟕{C.id_consultation = TH.id_consultation} TH
    39 
    40 Ј4 ← Ј3 ⨝{P.id_user = D.id_patient} D
     34J1 ← P ⨝,,P.id_user = U.id_user,, U
     35
     36Ј2 ← Ј1 ⟕,,P.id_user = C.id_patient,, C
     37
     38Ј3 ← Ј2 ⟕,,C.id_consultation = TH.id_consultation,, TH
     39
     40Ј4 ← Ј3 ⨝,,P.id_user = D.id_patient,, D
    4141
    4242**Проекција со трансформација на датум**
    4343
    44 D' ← π{id_user, id_consultation, id_therapy, daily_rating, YEAR(date) -> Year}(J4)
     44D' ← π,,id_user, id_consultation, id_therapy, daily_rating, YEAR(date) -> Year,,(J4)
    4545
    4646**Групирање и пресметка на агрегати**
    4747
    48 G ← Year σ
     48G ← Year γ,,
    4949COUNT(DISTINCT id_user) -> Total_Patients,
    5050COUNT(DISTINCT id_consultation) -> Total_Consultations,
     
    5252AVG(daily_rating) -> Avg_Mood_All_Patients,
    5353MIN(daily_rating) -> Lowest_Mood_Recorded
    54 }(D')
     54,,(D')
    5555
    5656**Хронолошко подредување според година**
    5757
    58 R{final} ← τ{Year}(G)
     58R,,final,, ← τ,,Year,,(G)
    5959
    6060== Годишен извештај за честота на користење на консултации и процент на платени консултации заедно со нивната просечна цена
     
    9696**JOIN на сите табели:**
    9797
    98 J1 ← T ⨝{T.id_user = U.id_user} U
    99 
    100 Ј2 ← Ј1 ⨝{T.id_user = C.id_therapist} C
     98J1 ← T ⨝,,T.id_user = U.id_user,, U
     99
     100Ј2 ← Ј1 ⨝,,T.id_user = C.id_therapist,, C
    101101
    102102**Екстракција на име и година**
    103103
    104 F1 ← π{id_user, id_consultation, price, date_of_payment, YEAR(date) -> Year, CONCAT(name, ' ', surname) -> Therapist_Name} (J2)
     104F1 ← π,,id_user, id_consultation, price, date_of_payment, YEAR(date) -> Year, CONCAT(name, ' ', surname) -> Therapist_Name,, (J2)
    105105
    106106**Групирање и пресметка на агрегати**
    107107
    108 G ← {Year, id_user, Therapist_Name} σ
    109 COUNT(id_consultation) -> Total_Consultations,
     108G ← ,,Year, id_user, Therapist_Name,, γ
     109,,COUNT(id_consultation) -> Total_Consultations,
    110110COUNT_IF(date_of_payment != NULL) -> Completed_Consultations,
    111 AVG(price) -> Avg_Consultation_Price
     111AVG(price) -> Avg_Consultation_Price,,
    112112(F1)
    113113
    114114**Пресметка на процент**
    115115
    116 P ←  π{Year, id_user, Therapist_Name, Total_Consultations, Completed_Consultations, Avg_Consultation_Price, (Completed_Consultations/ Total_Consultations) * 100 -> Completion_Rate_Percentage} (G)
     116P ←  π,,Year, id_user, Therapist_Name, Total_Consultations, Completed_Consultations, Avg_Consultation_Price, (Completed_Consultations/ Total_Consultations) * 100 -> Completion_Rate_Percentage,, (G)
    117117
    118118**Подредување**
    119119
    120 R{final} ← τ{Year, Completion_Rate_Percentage DESC} (P)
     120R,,final,, ← τ,,Year, Completion_Rate_Percentage DESC,, (P)
    121121
    122122== Годишен извештај за честота на постирање блогови и број на коментари по блог кај луѓе кој имаат отидено на терапевт барем 10 пати, според тоа кој терапевт го посетуваат
     
    190190**Дефинирање на LoyalPatients**
    191191
    192 J{lp} ← C ⨝{C.id_therapist = T.id_user} T ⨝{T.id_user = U.id_user} U
    193 
    194 LP ← σ{count_c >= 10} ({id_patient, id_therapist, name, surname} σ{COUNT(id_consultation) -> count_c} (J{lp}))
     192J,,lp,,← C ⨝,,C.id_therapist = T.id_user,, T ⨝,,T.id_user = U.id_user,, U
     193
     194LP ← σ,,count_c >= 10,, ({id_patient, id_therapist, name, surname} γ,,COUNT(id_consultation) -> count_c,, (J,,lp,,))
    195195
    196196**Дефинирање на BlogStats**
    197197
    198 J{bs} ← B ⟕{B.id_blog = COM.id_blog} COM
    199 
    200 F{bs} ← π{id_patient, id_blog, id_comment, YEAR(date_of_post) -> post_year} (J{bs})
    201 
    202 BS ← {id_patient, post_year} σCOUNT(DISTINCT {id_blog} -> blogs_count, COUNT(id_comment) -> comments_count} (F{bs})
     198J,,bs,, ← B ⟕,,B.id_blog = COM.id_blog,, COM
     199
     200F,,bs,, ← π,,id_patient, id_blog, id_comment, YEAR(date_of_post) -> post_year,, (J{bs})
     201
     202BS ← ,,id_patient, post_year,, γ,,COUNT(DISTINCT,,id_blog,, -> blogs_count, COUNT(id_comment) -> comments_count,, (F{bs})
    203203
    204204**Поврзување и пресметка на агрегати**
    205205
    206 J{final} ← LP ⨝{LP.id_patient = BS.id_patient} BS
    207 
    208 F{final} ← π{post_year, CONCAT(name, ' ', surname) -> Therapist, blogs_count, comments_count} (J{final})
    209 
    210 G ← {post_year, Therapist} σ
    211 SUM(blogs_count) -> Total_Blogs,
     206J,,final,, ← LP ⨝,,LP.id_patient = BS.id_patient,, BS
     207
     208F,,final,, ← π,,post_year, CONCAT(name, ' ', surname) -> Therapist, blogs_count, comments_count,, (J,,final,,)
     209
     210G ← ,,post_year, Therapist,, γ
     211,,SUM(blogs_count) -> Total_Blogs,
    212212SUM(comments_count) -> Total_Comments,
    213213AVG(blogs_count) -> Avg_Blogs,
    214 SUM(comments_count)/SUM(blogs_count) -> Avg_Comments_Per_Blog (F{final})
     214SUM(comments_count)/SUM(blogs_count) -> Avg_Comments_Per_Blog,, (F,,final,,)
    215215
    216216**Подредување**
    217217
    218 R{final} ← τ{post_year DESC, Total_Blogs DESC} (G)
     218R,,final,, ← τ,,post_year DESC, Total_Blogs DESC,, (G)
    219219
    220220== Вкупна годишна анализа на блогови по месец во однос на внесување дневници во просек по месец
     
    298298**Дефинирање на Blog_Monthly**
    299299
    300 F{bm} ← π{id_blog, id_patient, YEAR(date_of_post) -> year, MONTH(date_of_post) -> month} (B)
    301 
    302 BM ← {year, month} σCOUNT(id_blog) -> total_blogs, COUNT(DISTINCT {id_patient}) -> active_bloggers} (F{bm})
     300F,,bm,, ← π,,id_blog, id_patient, YEAR(date_of_post) -> year, MONTH(date_of_post) -> month,, (B)
     301
     302BM ← ,,year, month,, γ,,COUNT(id_blog) -> total_blogs, COUNT(DISTINCT,,id_patient,,) -> active_bloggers,, (F{bm})
    303303
    304304**Дефинирање на Diary_Monthly**
    305305
    306 F{dm} ← π{id_diary, id_patient, daily_rating, YEAR(date) -> year, MONTH(date) -> month} (D)
    307 
    308 DM ← {year, month} σ{COUNT(id_diary) -> total_diaries, COUNT(DISTINCT id\_patient) -> active_diarists, AVG(daily_rating) -> avg_monthly_mood} (F{dm})
     306F,,dm} ← π,,id_diary, id_patient, daily_rating, YEAR(date) -> year, MONTH(date) -> month,, (D)
     307
     308DM ← ,,year, month,, σ,,COUNT(id_diary) -> total_diaries, COUNT(DISTINCT id\_patient) -> active_diarists, AVG(daily_rating) -> avg_monthly_mood,, (F,,dm,,)
    309309
    310310**Поврзување на Monthly_Stats**
    311311
    312 MS ← BM ⟗{BM.year = DM.year ∧ BM.month = DM.month} DM
    313 
    314 MS{final} ← π{COALESCE(BM.year, DM.year) -> year, COALESCE(BM.month, DM.month) -> month, ..., avg_monthly_mood} (MS)
     312MS ← BM ⟗,,BM.year = DM.year ∧ BM.month = DM.month,, DM
     313
     314MS,,final,, ← π,,COALESCE(BM.year, DM.year) -> year, COALESCE(BM.month, DM.month) -> month, ..., avg_monthly_mood,, (MS)
    315315
    316316**Selection и Projection**
    317317
    318318P ←
    319 π{year, month, total_blogs, total_diaries, avg_monthly_mood, (total_blogs / active_bloggers) -> BlogsPerUser, (total_diaries / active_diarists) -> DiariesPerUser} (MS{final})
    320 
    321 P{ext}
    322 π{*, CASE_WHEN}(...) -> BehaviourType, (total_blogs / (total_blogs + total_diaries)) * 100 -> PublicityRate} (P)
     319π,,year, month, total_blogs, total_diaries, avg_monthly_mood, (total_blogs / active_bloggers) -> BlogsPerUser, (total_diaries / active_diarists) -> DiariesPerUser,, (MS,,final,,)
     320
     321P,,ext,,
     322π,,*, CASE_WHEN(...) -> BehaviourType, (total_blogs / (total_blogs + total_diaries)) * 100 -> PublicityRate,, (P)
    323323
    324324**Подредување**
    325325
    326 R{final} ← τ{year DESC, month DESC} (P{ext})
    327 
     326R,,final,, ← τ,,year DESC, month DESC,, (P,,ext,,)
     327