Sobes.tech
Junior — Middle

Ինչպե՞ս կարելի է օգտագործել EXPLAIN հրամանը տվյալների բազայում նոր ինդեքս ստեղծելու նպատակահարմարությունը գնահատելու համար։

sobes.tech AI

Պատասխան AI-ից

SQL-ում EXPLAIN հրամանը օգտագործվում է տվյալների բազայի շարժիչի կողմից հարցման կատարման պլանի վերլուծության համար: Որպեսզի գնահատեք, արդյոք արդարացված է նոր ինդեքս ստեղծել, կարող եք կատարել EXPLAIN այն հարցման համար, որը նախատեսում եք օպտիմալացնել, և դիտել, թե ինչպես է այն կատարվում տվյալների բազան:

Եթե EXPLAIN ցույց է տալիս, որ հարցումը իրականացնում է ամբողջական աղյուսակի սկան (full table scan), և WHERE պայմանում կա դաշտ, որի համար կարող եք ստեղծել ինդեքս, ապա ինդեքսի ստեղծումը կարող է զգալիորեն արագացնել հարցումը:

Օգտագործման օրինակ:

EXPLAIN SELECT * FROM users WHERE email = 'example@example.com';

Եթե ելքում տեսնում եք, որ օգտագործվում է full scan, կարող եք ստեղծել ինդեքս:

CREATE INDEX idx_users_email ON users(email);

Ինդեքսի ստեղծումից հետո կրկին կատարեք EXPLAIN և համեմատեք պլանները: Եթե այժմ օգտագործվում է ինդեքսային սկան (index scan), ապա ինդեքսը արդյունավետ է:

Այսպիսով, EXPLAIN-ը օգնում է հասկանալ, թե որքանով է հարցումը շահավետ ինդեքսից, և արդյոք արժե այն ստեղծել կամ ոչ: