Changes between Version 1 and Version 2 of QueryOptimization


Ignore:
Timestamp:
05/29/26 18:25:52 (3 weeks ago)
Author:
231101
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • QueryOptimization

    v1 v2  
    1 == SQL Views во системот за библиотека ==
     1= Оптимизација на прашалници и погледи
    22
    33Во овој дел се прикажани SQL погледите кои се користат во системот за управување со библиотека.
    4 Секој поглед е креиран со цел да прикаже одредени податоци на поорганизиран начин и да ја олесни работата со книгите, членовите, позајмувањата, резервациите и финансиските информации.
    5 
    6 ---
     4Секој поглед е креиран со цел да прикажат одредени податоци на поорганизиран начин и да ја олесни работата со книгите, членовите, позајмувањата, резервациите и финансиските информации.
     5
     6
    77
    88=== 1. View: vw_books_in_library ===
     
    3737Се користи кога библиотекарот или корисникот треба брзо да провери дали одредена книга има достапни копии за позајмување.
    3838
    39 ---
     39
    4040
    4141=== 2. View: vw_member_financial_summary ===
     
    9191Се користи за проверка колку вкупно треба да плати одреден член, земајќи ги предвид и членарините и казните.
    9292
    93 ---
     93
    9494
    9595=== 3. View: vw_most_popular_books_per_month ===
     
    123123Се користи за извештаи кои покажуваат кои книги биле најбарани во одредени месеци, што може да помогне при набавка на нови копии или планирање на библиотечниот фонд.
    124124
    125 ---
     125
    126126
    127127=== 4. View: vw_reservations ===
     
    152152Се користи за библиотекарот да има јасен преглед кои книги се резервирани, од кои членови и во каков статус се резервациите.
    153153
    154 ---
     154
    155155
    156156=== 5. View: vw_overdue_books ===
     
    191191Се користи за библиотекарот да може лесно да провери кои членови доцнат со враќање на книги и колку дена е поминат рокот.
    192192
    193 ---
     193
    194194
    195195=== 6. View: vw_low_stock_books ===
     
    243243Се користи за библиотеката да може навреме да утврди за кои книги треба да се набават дополнителни копии.
    244244
    245 ---
     245
    246246
    247247=== 7. View: vw_member_borrowing_history ===
     
    271271Се користи кога библиотекарот сака да ја провери историјата на позајмувања на одреден корисник.
    272272
    273 ---
     273
    274274
    275275=== 8. View: vw_book_catalog ===
     
    327327Се користи за пребарување и прикажување на детални информации за книгите во библиотечниот систем.
    328328
    329 ---
     329
    330330
    331331=== 9. View: vw_damaged_books ===
     
    351351Се користи за библиотекарот да има преглед кои копии не се во добра состојба и треба да се поправат, заменат или отстранат од употреба.
    352352
    353 ---
    354 
    355 == Тестирање и оптимизација ==
    356 
    357 За проверка на перформансите на погледите се користи командата `EXPLAIN ANALYZE`, со која се добива времето на извршување и начинот на кој базата го извршува пребарувањето.
    358 
    359 Пример:
    360 
    361 {{{#!sql
    362 EXPLAIN ANALYZE
    363 SELECT * FROM vw_member_financial_summary;
    364 }}}
    365 
    366 Дополнително, за подобрување на перформансите може да се користат индекси на колоните кои често се користат во `JOIN`, `WHERE` и `GROUP BY` услови.
    367 
    368 Пример:
    369 
    370 {{{#!sql
    371 CREATE INDEX idx_borrowing_membership
    372 ON borrowing(membership_id);
    373 }}}
    374 
    375 '''Објаснување:'''
    376 Овој индекс се користи за побрзо поврзување на табелата `borrowing` со други табели преку колоната `membership_id`.
    377 Индексите помагаат да се намали времето на пребарување, особено кога табелите содржат голем број записи.
    378 
    379 ---
     353
     354
    380355
    381356== Заклучок ==