Changes between Version 34 and Version 35 of QueryOptimization
- Timestamp:
- 05/09/26 21:03:56 (2 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
QueryOptimization
v34 v35 21 21 }}} 22 22 23 1. Без индекс 24 25 * '''SELECT''' 26 27 {{{ 28 29 EXPLAIN ANALYZE 30 SELECT * FROM "Performer_Events" WHERE performer_id = 10; 31 32 }}} 33 34 * '''INSERT''' 35 36 {{{ 37 38 EXPLAIN ANALYZE 39 INSERT INTO "Event_Happening_Performer" (event_happening_id, performer_id) 40 VALUES (1, 10); 41 42 }}} 43 44 * '''UPDATE''' 45 46 {{{ 47 48 EXPLAIN ANALYZE 49 UPDATE "Event_Happening_Performer" 50 SET performer_id = 11 51 WHERE event_happening_id = 1 AND performer_id = 10; 52 53 }}} 54 55 Погледот е бавен поради комплексни врски помеѓи четири табели што резултира со време од 3.2s. Индексите на performer_id и event_id го елиминираат целосното скенирање на табелите и овозможуваат инстантно поврзување на изведувачите со нивните настани. 56 23 57 ==== Оптимизација: 24 58 … … 31 65 -- index for optimizing event lookups within scheduled event happenings 32 66 CREATE INDEX idx_event_happening_event_id ON "Event_Happening"(event_id); 67 68 }}} 69 70 2. Со индекс 71 72 * '''SELECT''' 73 74 {{{ 75 76 EXPLAIN ANALYZE 77 SELECT * FROM "Performer_Events" WHERE performer_id = 10; 78 79 }}} 80 81 * '''INSERT''' 82 83 {{{ 84 85 EXPLAIN ANALYZE 86 INSERT INTO "Event_Happening_Performer" (event_happening_id, performer_id) 87 VALUES (2, 10); 88 89 }}} 90 91 * '''UPDATE''' 92 93 {{{ 94 95 EXPLAIN ANALYZE 96 UPDATE "Event_Happening_Performer" 97 SET performer_id = 12 98 WHERE event_happening_id = 2 AND performer_id = 10; 33 99 34 100 }}}
