Changes between Version 3 and Version 4 of AdvancedReports


Ignore:
Timestamp:
09/22/26 01:52:19 (7 days ago)
Author:
201165
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedReports

    v3 v4  
    22
    33//[https://dbis-uibk.github.io/relax/calc/local/misc/local/0 Алатка за релациона алгебра]
     4||= Ознака =||= Операција =||
     5|| σ ||  ||
     6|| π ||  ||
     7|| ⋈ ||  ||
     8|| ⟕ ||  ||
     9|| γ ||  ||
     10|| τ ||  ||
     11|| − ||  ||
     12|| ω ||  ||
     13|| ← ||  ||
     14|| SUM(x | у) ||  ||
     15
     16
     17
    418
    519== Извештај 1: Преглед на активноста во заедницата
    … …  
    4054)
    4155}}}
    42 ===
     56== Извештај 2: Профил на макронутриенти по порција
     57//Health Stat Check//
     58=== Опис на барањата за податоци
     59Протеини, јаглехидрати, масти и влакна во една порција од секој рецепт.
     60Спојува две одделни M:N врски во еден нутритивен приказ: рецепт содржи состојки, а состојка содржи нутриенти. За секој рецепт пресметува колку грама од секој макронутриент дава една порција, и ги рангира рецептите по протеини.
     61* (нутриент на 100 g) × (употребени грамови) / 100 преку сите состојки, поделен со бројот на порции.
     62=== SQL - приказ
     63{{{
     64SELECT r.name                          AS recipe,
     65       ROUND(r.kcal_sum / r.servings)  AS kcal_per_portion,
     66       ROUND(SUM(CASE WHEN n.description = 'Protein'
     67                      THEN icn.quantity * rci.ingredient_quantity / 100
     68                 END) / r.servings, 1) AS protein_g,
     69       ROUND(SUM(CASE WHEN n.description = 'Total carbohydrate'
     70                      THEN icn.quantity * rci.ingredient_quantity / 100
     71                 END) / r.servings, 1) AS carbs_g,
     72       ROUND(SUM(CASE WHEN n.description = 'Total fat'
     73                      THEN icn.quantity * rci.ingredient_quantity / 100
     74                 END) / r.servings, 1) AS fat_g,
     75       ROUND(SUM(CASE WHEN n.description = 'Dietary fibre'
     76                      THEN icn.quantity * rci.ingredient_quantity / 100
     77                 END) / r.servings, 1) AS fibre_g
     78FROM recipe r
     79JOIN recipe_contains_ingredient   rci ON rci.recipe_id     = r.id
     80JOIN ingredient_contains_nutrient icn ON icn.ingredient_id = rci.ingredient_id
     81JOIN nutrient n                       ON n.id              = icn.nutrient_id
     82WHERE n.type = 'macro'
     83GROUP BY r.id, r.name, r.kcal_sum, r.servings
     84ORDER BY protein_g DESC;
     85}}}
     86=== Релациона алгебра - приказ
     87{{{
     88amount ≡ icn.quantity · rci.ingredient_quantity / 100
     89
     90τ_{protein_g DESC} (
     91  γ_{r.id, r.name, r.kcal_sum, r.servings;
     92      SUM(amount | n.description = 'Protein')            / r.servings → protein_g,
     93      SUM(amount | n.description = 'Total carbohydrate') / r.servings → carbs_g,
     94      SUM(amount | n.description = 'Total fat')          / r.servings → fat_g,
     95      SUM(amount | n.description = 'Dietary fibre')      / r.servings → fibre_g} (
     96    σ_{n.type = 'macro'} (
     97      Recipe
     98        ⋈_{r.id = rci.recipe_id}              Recipe_Contains_Ingredient
     99        ⋈_{rci.ingredient_id = icn.ingredient_id} Ingredient_Contains_Nutrient
     100        ⋈_{icn.nutrient_id = n.id}            Nutrient
     101    )
     102  )
     103)
     104}}}
     105== Извештај 3: Целосно растителни рецепти
     106
     107=== Опис на барањата за податоци
     108=== SQL - приказ
     109=== Релациона алгебра - приказ
     110
     111== Извештај 4: Ден со најголем внес по корисник
     112
     113=== Опис на барањата за податоци
     114=== SQL - приказ
     115=== Релациона алгебра - приказ
     116
     117
    43118== Навигација низ проектот
    44119[https://develop.finki.ukim.mk/projects/nutritioneer/wiki/WikiStart Почетна страна]