| Version 1 (modified by , 44 hours ago) ( diff ) |
|---|
Извештај по тагови
Опис
Овој поглед обезбедува преглед на потрошувачката по тагови, со што се овозможува категоризација и анализа на трошоците според нивната намена (храна, транспорт, сметки, забава и сл.)
Погледот ги поврзува трансакциите со нивните тагови и ја сумира вкупната потрошувачка за секој таг
Табели опфатени со погледот
tagtag_assigned_to_transactiontransactiontransaction_breakdown
SQL код
CREATE OR REPLACE VIEW vw_spending_by_tag AS
SELECT
tg.tag_id,
tg.tag_name,
COALESCE(SUM(tb.spent_amount), 0) AS total_spent,
COUNT(DISTINCT t.transaction_id) AS transaction_count
FROM tag tg
JOIN tag_assigned_to_transaction tat
ON tat.tag_id = tg.tag_id
JOIN transaction t
ON t.transaction_id = tat.transaction_id
JOIN transaction_breakdown tb
ON tb.transaction_id = t.transaction_id
GROUP BY
tg.tag_id,
tg.tag_name;
Објаснување на логиката
- Се земаат само трансакции кои имаат доделен таг
spent_amountсе агрегира по тагCOUNT(DISTINCT ...)се користи за да се избегне дуплирање на трансакции
Причина за користење
- категоризацијата е суштинска за лични финансии
- овозможува анализа на трошоци по намена
- ја елиминира потребата од сложени
JOINиGROUP BYбарања
Note:
See TracWiki
for help on using the wiki.
