| 31 | Погледот служи за да ги пронајдеме категориите за секој клиент од кои највеќе купувал продукти. Овој поглед би можел да се користи за да му предложуваме продукти од соодвените категории на клиентот или да ставаме реклами за соодвените категории. За овој поглед филтерот би бил user_id, за да најдеме за секој клиент од кои категории највеќе купувал продукти. Бидејќи во погледот се прават поврзувања со неколку табели, креирани се неколку индекси кои би го убрзале процесот на извршување на прашалниците поврзани со овој поглед:\\ |
| 32 | |
| 33 | * Креиран е индекс на product_id во order_details табелата (постои од претходно)\\ |
| 34 | * Креиран е индекс na order_id во order_details табелата (постои од претходно)\\ |
| 35 | * Креиран е индекс на user_id во order табелата\\ |
| 36 | * Креиран е индекс на category_id во product табелата\\ |
| 37 | |
| 38 | Сите индекси се од тип B-tree. Ако ја погледнете дефиниција на погледот и планот на извршување на прашалниците (сликa View и слика Explain Plan – Before Index), ќе видите дека се користат индекси на спојувањето со табелата order_details бидејќи тие индекси се креирани за друг поглед, а ако го погледнете планот на извршување на прашалникот после индексите (слика Explain Plan – After Index), ќе видите дека се користат и новите индекси за спојување со таблите order и category |
| 39 | Сите индекси се од тип B-tree, затоа што сите индекси се колони во кои имаме број(integer), при што за такви колони најсоодветен е B-tree индексот. Иако филтерот за погледот е user_id, најсоодветен индекс за вакви пребарувања е B-tree индексот. Погледот е комплексен, при што кога ќе извршиме прашалник за овој поглед, времето на извршување е 2 секунди и 677 милисекунди (слика Select – Before Index), пред да додадеме индекси, додека откако додадовме индекси времето на извршување е 129 милисекунди (слика Select – After Index).\\ |
| 40 | |
| 41 | |