| 14 | | || [wiki:MenuMealView v_menu_meal] || Ги прикажува јадењата со категорија, ресторан, состојки и алергени. || `meal_ingredient`, `ingredient`, `alergen_ingredient`, `alergen`, `meal`, `category`, `restaurant` || Двата CTE изрази користат `string_agg(DISTINCT ... ORDER BY ...)`, без вгнездени `SELECT DISTINCT` прашалници. Јадењата без состојки или алергени остануваат во резултатот со празни листи. || |
| | 14 | || [wiki:MenuMealView v_menu_meal] || Ги прикажува јадењата со категорија, ресторан, состојки и алергени. || `meal_ingredient`, `ingredient`, `alergen_ingredient`, `alergen`, `meal`, `category`, `restaurant` || Состојките и алергените се прикажуваат како азбучно подредени листи без повторувања. Се прикажуваат и јадењата без наведени состојки или алергени. || |
| 22 | | || [wiki:OrdersFullView v_orders_full] || Прикажува нарачки со податоци за клиентот, компанијата, статусот, доставата и нарачаните јадења и пијалоци. || `order_meal`, `meal`, `order_drink`, `drink`, `customer_order`, `order_status`, `customer`, `api_user`, `company_order`, `company`, `delivery`, `delivery_status` || Списоците се добиваат со `string_agg(DISTINCT ... ORDER BY ...)`. Податоците за доставувачот се земаат директно од `api_user` преку `delivery.driver_user_id`; нема посебно спојување со `driver`. Се задржуваат нарачките без достава. || |
| 23 | | || [wiki:DriverDeliveriesView v_driver_deliveries] || Ги прикажува доставите, доставувачите, рестораните, компаниите и поврзаните нарачки. || `delivery`, `delivery_status`, `driver`, `api_user`, `restaurant`, `company_order`, `company`, `v_orders_full` || Го користи `v_orders_full` за деталите за клиентот и списоците со јадења и пијалоци. `LEFT JOIN` ги задржува и доставите без доставувач, компаниска нарачка или клиентски нарачки. || |
| | 22 | || [wiki:OrdersFullView v_orders_full] || Прикажува нарачки со податоци за клиентот, компанијата, статусот, доставата и нарачаните јадења и пијалоци. || `order_meal`, `meal`, `order_drink`, `drink`, `customer_order`, `order_status`, `customer`, `api_user`, `company_order`, `company`, `delivery`, `delivery_status` || Јадењата и пијалоците се прикажуваат во подредени листи без повторувања. Податоците за доставувачот се поврзани со доставата. Се прикажуваат и нарачките за кои сè уште нема достава. || |
| | 23 | || [wiki:DriverDeliveriesView v_driver_deliveries] || Ги прикажува доставите, доставувачите, рестораните, компаниите и поврзаните нарачки. || `delivery`, `delivery_status`, `driver`, `api_user`, `restaurant`, `company_order`, `company`, `v_orders_full` || Го користи прегледот на нарачки за деталите за клиентот и нарачаните производи. Се прикажуваат и доставите без назначен доставувач или поврзани нарачки. || |
| 30 | | || [wiki:ReviewsFullView v_reviews_full] || Ги обединува оцените за нарачки и достави, со ознака за типот на рецензијата. || `review`, `order_review`, `customer_order`, `api_user`, `company_order`, `company`, `delivery_review`, `delivery` || Користи `UNION ALL`. Отстранети се посредните спојувања со `customer` и `driver`; корисничките податоци се земаат директно од `api_user`. Ако една рецензија има записи во двата поттипа, се прикажуваат двата записа. || |
| | 30 | || [wiki:ReviewsFullView v_reviews_full] || Ги обединува оцените за нарачки и достави, со ознака за типот на рецензијата. || `review`, `order_review`, `customer_order`, `api_user`, `company_order`, `company`, `delivery_review`, `delivery` || Секој запис го задржува типот на рецензијата и соодветните оценки. Ако една рецензија се однесува и на нарачка и на достава, се прикажуваат двата записа. || |
| 37 | | || [wiki:ContractsRevenueView v_contracts_revenue] || За секој договор ги прикажува бројот на компаниски и клиентски нарачки и вкупниот приход за парот компанија–ресторан. || `order_meal`, `meal`, `order_drink`, `drink`, `customer_order`, `company_order`, `contract`, `company`, `restaurant`, `contract_status` || `UNION` ги отстранува повторувањата на парот нарачка–ресторан. Нема филтер за активен договор, датум или статус на нарачка. Целиот износ на нарачката се брои кај секој вклучен ресторан, а истата статистика се повторува кај договорите за истиот пар компанија–ресторан. || |
| 38 | | || [wiki:CompanyBillingOverviewView v_company_billing_overview] || За секоја фактура ги прикажува компанијата, доставата, бројот на клиентски нарачки, нивниот вкупен износ и бројот на договори на компанијата. || `contract`, `invoice`, `company_order`, `company`, `customer_order` || Износот и бројот на нарачки се пресметуваат во главниот прашалник. Договорите се бројат во посебен CTE за да не го умножат износот. Фактурите без клиентски нарачки имаат број и износ еднакви на нула. || |
| 39 | | || [wiki:CustomerLoyaltyFullView v_customer_loyalty_full_v2] || Ги прикажува клиентот, компанијата, поените, статусот и нивото на лојалност, бројот на нарачки, вкупната потрошувачка и датумот на последната нарачка. || `customer_order`, `customer_loyalty`, `customer`, `company`, `api_user`, `customer_loyalty_status`, `loyalty_tier` || CTE изразот `order_stats` пресметува `COUNT`, `SUM` и `MAX` по клиент. Статистиката ги опфаќа сите статуси на нарачки. Се прикажуваат клиентите со запис во `customer_loyalty`, вклучувајќи ги и оние без нарачки. || |
| | 37 | || [wiki:ContractsRevenueView v_contracts_revenue] || За секој договор ги прикажува бројот на компаниски и клиентски нарачки и вкупниот приход за парот компанија–ресторан. || `order_meal`, `meal`, `order_drink`, `drink`, `customer_order`, `company_order`, `contract`, `company`, `restaurant`, `contract_status` || Статистиката ги опфаќа сите нарачки, независно од датумот и статусот на договорот или нарачката. Целиот износ на нарачката се брои кај секој вклучен ресторан. Договорите за истиот пар компанија–ресторан ја прикажуваат истата статистика. || |
| | 38 | || [wiki:CompanyBillingOverviewView v_company_billing_overview] || За секоја фактура ги прикажува компанијата, доставата, бројот на клиентски нарачки, нивниот вкупен износ и бројот на договори на компанијата. || `contract`, `invoice`, `company_order`, `company`, `customer_order` || Износот на фактурата е збир од поврзаните клиентски нарачки. Бројот на договори се пресметува одделно. Фактурите без клиентски нарачки имаат број и износ еднакви на нула. || |
| | 39 | || [wiki:CustomerLoyaltyFullView v_customer_loyalty_full_v2] || Ги прикажува клиентот, компанијата, поените, статусот и нивото на лојалност, бројот на нарачки, вкупната потрошувачка и датумот на последната нарачка. || `customer_order`, `customer_loyalty`, `customer`, `company`, `api_user`, `customer_loyalty_status`, `loyalty_tier` || Статистиката се пресметува по клиент и ги опфаќа сите статуси на нарачки. Се прикажуваат членовите на програмата за лојалност, вклучувајќи ги и оние без нарачки. || |
| 56 | | ||= Датотека на индекс ||= Индекси дефинирани во датотеката ||= Поддржани погледи ||= Забелешки || |
| 57 | | || [wiki:MenuMealIndex Index 2.0/02_v_menu_meal_index.sql] || `meal(cat_id, meal_id)`, `meal_ingredient(meal_id, ingr_id)`, `alergen_ingredient(ingr_id, alergen_id)` || `v_menu_meal` || Ги поддржува пребарувањето по категорија и врските јадење–состојки–алергени. `meal(rest_id, meal_name)` веќе е покриен со `UNIQUE`. || |
| 58 | | || `Index 2.0/01_v_menu_drink_index.sql` || Нема нови дефиниции || `v_menu_drink` || Нема дополнителен индекс. `restaurant(rest_id)` е примарен клуч, а `drink(rest_id, drink_name)` веќе има `UNIQUE` индекс. || |
| | 56 | ||= Област ||= Индекси ||= Поддржани погледи ||= Забелешки || |
| | 57 | || [wiki:MenuMealIndex Мени со јадења] || `meal(cat_id, meal_id)`, `meal_ingredient(meal_id, ingr_id)`, `alergen_ingredient(ingr_id, alergen_id)` || `v_menu_meal` || Ги поддржува пребарувањето по категорија и врските јадење–состојки–алергени. `meal(rest_id, meal_name)` веќе е покриен со `UNIQUE`. || |
| | 58 | || Мени со пијалоци || Основни и заеднички индекси || `v_menu_drink` || Нема дополнителен индекс. `restaurant(rest_id)` е примарен клуч, а `drink(rest_id, drink_name)` веќе има `UNIQUE` индекс. || |
| 62 | | ||= Датотека на индекс ||= Индекси дефинирани во датотеката ||= Поддржани погледи ||= Забелешки || |
| 63 | | || [wiki:OrdersFullIndex Index 2.0/03_v_orders_full_index.sql] || `company_order(company_id)`, `customer_order(comp_order_id)`, `order_meal(order_id, meal_id)`, `order_drink(order_id, drink_id)` || `v_orders_full`, `v_driver_deliveries`, `v_contracts_revenue`, `v_company_billing_overview`, `v_reviews_full` || Заеднички индекси за пронаоѓање компаниски и клиентски нарачки и за поврзување на јадењата и пијалоците по нарачка. Индексите по доставувач и клиент се дефинирани во датотеките 05 и 07. || |
| 64 | | || [wiki:DriverDeliveriesIndex Index 2.0/05_v_driver_deliveries_index.sql] || `delivery(driver_user_id, delivery_date)` || `v_driver_deliveries`, `v_orders_full`, `v_reviews_full` || Пребарување по доставувач и датум. Ги користи и индексите од датотека 03; индексот за `driver(rest_id)` е во датотека 08. || |
| 65 | | || [wiki:ReviewsFullIndex Index 2.0/04_v_reviews_full_index.sql] || Нема нови дефиниции || `v_reviews_full` || Нема дополнителен индекс. Врските преку `review_id`, `order_id` и `delivery_id` се покриени со примарни и уникатни клучеви. Се користат и заедничките индекси од датотеките 03, 05 и 07. || |
| | 62 | ||= Област ||= Индекси ||= Поддржани погледи ||= Забелешки || |
| | 63 | || [wiki:OrdersFullIndex Нарачки] || `company_order(company_id)`, `customer_order(comp_order_id)`, `order_meal(order_id, meal_id)`, `order_drink(order_id, drink_id)` || `v_orders_full`, `v_driver_deliveries`, `v_contracts_revenue`, `v_company_billing_overview`, `v_reviews_full` || Заеднички индекси за пронаоѓање компаниски и клиентски нарачки и за поврзување на јадењата и пијалоците по нарачка. Пребарувањата по доставувач и клиент се поддржани и со индексите за достави и лојалност. || |
| | 64 | || [wiki:DriverDeliveriesIndex Достави] || `delivery(driver_user_id, delivery_date)` || `v_driver_deliveries`, `v_orders_full`, `v_reviews_full` || Пребарување по доставувач и датум. Се користат и заедничките индекси за нарачки и за поврзување на доставувачите со рестораните. || |
| | 65 | || [wiki:ReviewsFullIndex Рецензии] || Основни и заеднички индекси || `v_reviews_full` || Нема дополнителен индекс. Врските преку `review_id`, `order_id` и `delivery_id` се покриени со примарни и уникатни клучеви. Се користат и заедничките индекси за нарачки, достави и клиенти. || |
| 69 | | ||= Датотека на индекс ||= Индекси дефинирани во датотеката ||= Поддржани погледи ||= Забелешки || |
| 70 | | || [wiki:ContractsRevenueIndex Index 2.0/06_v_contracts_revenue_index.sql] || `contract(company_id, rest_id)` || `v_contracts_revenue`, `v_company_billing_overview` || Водечката колона `company_id` поддржува и групирање на договорите за фактурирање. Не се додава посебен индекс само на `contract(company_id)`. Индексите за нарачките се во датотека 03. || |
| 71 | | || [wiki:CompanyBillingOverviewIndex Index 2.0/09_v_company_billing_overview_index.sql] || Нема нови дефиниции || `v_company_billing_overview` || Нема дополнителен индекс. Ги користи `company_order(company_id)` и `customer_order(comp_order_id)` од датотека 03 и `contract(company_id, rest_id)` од датотека 06. `invoice(comp_order_id)` веќе има `UNIQUE` индекс. || |
| 72 | | || [wiki:CustomerLoyaltyFullIndex Index 2.0/07_v_customer_loyalty_full_v2_index.sql] || `customer_order(customer_user_id, order_datetime DESC)`, `customer(company_id)` || `v_customer_loyalty_full_v2`, `v_orders_full` || Пребарување на нарачки по клиент и датум и на клиенти по компанија. `customer_loyalty(user_id)` веќе има `UNIQUE` индекс. За сумата на потрошувачката и натаму се чита `order_total`. || |
| 73 | | || [wiki:DriverLunchTimersIndex Index 2.0/08_v_driver_lunch_timers_index.sql] || `driver(rest_id)`, `contract(rest_id, company_id)`, `lunch_time(contract_id)` || `v_driver_lunch_timers`, `v_driver_deliveries`; пребарување договори по ресторан во `v_contracts_revenue` || Ги поддржува врските ресторан–доставувач, ресторан–договор и договор–термин. Индексот на `lunch_time` започнува со `contract_id`, па не бара филтер по ден. || |
| | 69 | ||= Област ||= Индекси ||= Поддржани погледи ||= Забелешки || |
| | 70 | || [wiki:ContractsRevenueIndex Договори и приходи] || `contract(company_id, rest_id)` || `v_contracts_revenue`, `v_company_billing_overview` || Водечката колона `company_id` поддржува и групирање на договорите за фактурирање. Истиот индекс поддржува пребарување само по компанија. За нарачките се користат заедничките индекси. || |
| | 71 | || [wiki:CompanyBillingOverviewIndex Фактурирање] || Основни и заеднички индекси || `v_company_billing_overview` || Нема дополнителен индекс. Ги користи заедничките индекси `company_order(company_id)`, `customer_order(comp_order_id)` и `contract(company_id, rest_id)`. `invoice(comp_order_id)` веќе има `UNIQUE` индекс. || |
| | 72 | || [wiki:CustomerLoyaltyFullIndex Лојалност на клиентите] || `customer_order(customer_user_id, order_datetime DESC)`, `customer(company_id)` || `v_customer_loyalty_full_v2`, `v_orders_full` || Пребарување на нарачки по клиент и датум и на клиенти по компанија. `customer_loyalty(user_id)` веќе има `UNIQUE` индекс. За сумата на потрошувачката и натаму се чита `order_total`. || |
| | 73 | || [wiki:DriverLunchTimersIndex Термини за ручек] || `driver(rest_id)`, `contract(rest_id, company_id)`, `lunch_time(contract_id)` || `v_driver_lunch_timers`, `v_driver_deliveries`; пребарување договори по ресторан во `v_contracts_revenue` || Ги поддржува врските ресторан–доставувач, ресторан–договор и договор–термин. Индексот на `lunch_time` започнува со `contract_id`, па не бара филтер по ден. || |