Changes between Version 2 and Version 3 of AdvancedReport1
- Timestamp:
- 12/29/25 18:24:38 (4 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AdvancedReport1
v2 v3 53 53 54 54 JOIN на сите табели: 55 - J1 := TA ⨝_{TA.user_id = U.user_id}U56 - J2 := J1 ⨝_{TA.transaction_account_id = TB.transaction_account_id}TB57 - J3 := J2 ⨝_{TB.transaction_id = T.transaction_id}T55 - J1 ← TA ⨝,,TA.user_id = U.user_id,, U 56 - J2 ← J1 ⨝,,TA.transaction_account_id = TB.transaction_account_id,, TB 57 - J3 ← J2 ⨝,,TB.transaction_id = T.transaction_id,, T 58 58 59 59 Филтер според име на акаунт: 60 - F1 := σ_{account_name = p_account_name}(J3)60 - F1 ← σ,,account_name = p_account_name,,(J3) 61 61 62 62 Пресметка на кумулативен баланс: 63 - CB := γ_{user_id, user_name, account_name, transaction_id, transaction_name, transaction_amount, transaction_date; 64 Σ(transaction_amount) OVER (PARTITION BY transaction_account_id ORDER BY transaction_date) → calculated_balance}(F1) 63 - CB ← γ,,user_id, user_name, account_name, transaction_id, transaction_name, transaction_amount, transaction_date; Σ(transaction_amount) OVER (PARTITION BY transaction_account_id ORDER BY transaction_date) → calculated_balance,,(F1) 65 64 66 65 каде `transaction_amount = spent_amount` и кумулативната сума е `Σ(earned_amount - spent_amount)` 67 66 68 67 Филтрирање на трансакциите кои го надминуваат балансот: 69 - R := σ_{transaction_amount > calculated_balance ∧ transaction_amount > 0}(CB)68 - R ← σ,,transaction_amount > calculated_balance ∧ transaction_amount > 0,,(CB) 70 69 71 70 Подредување хронолошки(почнувајќи од најновата трансакција до најстарата): 72 - R_final := τ_{transaction_date DESC}(R)71 - R_final ← τ,,transaction_date DESC,,(R)
