Changes between Version 1 and Version 2 of QueryOptimization
- Timestamp:
- 05/29/26 18:25:52 (3 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
QueryOptimization
v1 v2 1 = = SQL Views во системот за библиотека ==1 = Оптимизација на прашалници и погледи 2 2 3 3 Во овој дел се прикажани SQL погледите кои се користат во системот за управување со библиотека. 4 Секој поглед е креиран со цел да прикаж еодредени податоци на поорганизиран начин и да ја олесни работата со книгите, членовите, позајмувањата, резервациите и финансиските информации.5 6 --- 4 Секој поглед е креиран со цел да прикажат одредени податоци на поорганизиран начин и да ја олесни работата со книгите, членовите, позајмувањата, резервациите и финансиските информации. 5 6 7 7 8 8 === 1. View: vw_books_in_library === … … 37 37 Се користи кога библиотекарот или корисникот треба брзо да провери дали одредена книга има достапни копии за позајмување. 38 38 39 --- 39 40 40 41 41 === 2. View: vw_member_financial_summary === … … 91 91 Се користи за проверка колку вкупно треба да плати одреден член, земајќи ги предвид и членарините и казните. 92 92 93 --- 93 94 94 95 95 === 3. View: vw_most_popular_books_per_month === … … 123 123 Се користи за извештаи кои покажуваат кои книги биле најбарани во одредени месеци, што може да помогне при набавка на нови копии или планирање на библиотечниот фонд. 124 124 125 --- 125 126 126 127 127 === 4. View: vw_reservations === … … 152 152 Се користи за библиотекарот да има јасен преглед кои книги се резервирани, од кои членови и во каков статус се резервациите. 153 153 154 --- 154 155 155 156 156 === 5. View: vw_overdue_books === … … 191 191 Се користи за библиотекарот да може лесно да провери кои членови доцнат со враќање на книги и колку дена е поминат рокот. 192 192 193 --- 193 194 194 195 195 === 6. View: vw_low_stock_books === … … 243 243 Се користи за библиотеката да може навреме да утврди за кои книги треба да се набават дополнителни копии. 244 244 245 --- 245 246 246 247 247 === 7. View: vw_member_borrowing_history === … … 271 271 Се користи кога библиотекарот сака да ја провери историјата на позајмувања на одреден корисник. 272 272 273 --- 273 274 274 275 275 === 8. View: vw_book_catalog === … … 327 327 Се користи за пребарување и прикажување на детални информации за книгите во библиотечниот систем. 328 328 329 --- 329 330 330 331 331 === 9. View: vw_damaged_books === … … 351 351 Се користи за библиотекарот да има преглед кои копии не се во добра состојба и треба да се поправат, заменат или отстранат од употреба. 352 352 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 380 355 381 356 == Заклучок ==
