Database

SQL İndeksi nədir? Yaradılması və İstifadəsi

 

SQL indeksləri (index) verilənlər bazasında sorğuların performansını artırmaq üçün istifadə olunan strukturlardır. İndekslər verilənlərin daha sürətli tapılması üçün yaradılır və verilənlər bazasındakı cədvəlin bir və ya bir neçə sütununa əsaslanaraq yaradılır. İndeks məlumatların ardıcıl olaraq saxlanılmasını təmin etmir, lakin məlumatlara daha sürətli girişi təmin edir.

İndeksin əsas üstünlüyü, cədvəldə axtarış, seçim (SELECT), çeşidləmə (ORDER BY) və qruplaşdırma (GROUP BY) əməliyyatlarının sürətini artırmasıdır. Bu, xüsusilə çoxlu verilənlər olan böyük cədvəllərdə vacibdir. Ancaq unutmaq olmaz ki, indekslər həm də bəzi mənfi tərəflərə malikdir: onları yaratmaq, saxlanmaq və yeniləmək əlavə yaddaş və resurslar tələb edir.

İndeksin yaradılması qaydası:

SQL-də indeks yaratmaq üçün CREATE INDEX ifadəsi istifadə olunur. nümunəsi aşağıdakı kimidir:

CREATE INDEX index_adı ON cədvəl_adı (sütun_adı);

Nümunə üçün, “müştərilər” adlı cədvəldə “ad” sütununa indeks yaratmaq üçün:

CREATE INDEX idx_ad ON musderiler (ad);

İndeksin istifadə qaydası:

İndeks yaratdıqdan sonra SQL engine sorğuların icrası zamanı həmin indeksdən istifadə edərək daha sürətli nəticələr əldə edə bilər. Məsələn, aşağıdakı sorğu:

SELECT * FROM müştərilər WHERE ad = 'Orxan';
“ad” sütununda indeks olduqda, bu sorğu həmin indeksdən istifadə edəcək və cədvəldə daha sürətli axtarış aparacaq.

Müxtəlif indekslər mövcuddur:

  • UNIQUE Index: Dublikat dəyərlərə icazə vermir.
  • PRIMARY KEY Index: Cədvəl üçün unikal identifikator yaratmaq üçün istifadə olunur və tək dəyər olur.
  • FULLTEXT Index: Text  məlumatlarının axtarışı üçün istifadə olunur.
  • CLUSTERED Index: Məlumatların cədvəldə fiziki ardıcıllığını dəyişir.

İndeksi silmək üçün:

İndeksi silmək üçün DROP INDEX komandasından istifadə olunur:

DROP INDEX idx_ad;

Bu komanda ilı indeksdən istifadə olunmayacaq və əlavə yaddaş boşaldılacaq.

İndeksdən nə vaxt və niyə istifadə edilməlidir?

  • Sorğulara tez-tez müəyyən sütunlara əsaslanan seçimlər etdikdə.
  • Böyük cədvəllərdən məlumatların tez tapılması üçün lazım gəldikdə.
  • Sorğularda tez-tez WHERE, JOINORDER BY kimi əməliyyatlar istifadə olunduqda.

Qeyd: Ancaq unutmaq unutmayın ki, kiçik cədvəllərdə çox sayda indeks yaratmaqın heç bir  faydası yoxdur və əlavə yer tutduğu üçün əlavə xərclər yarada bilər.

Related Articles

Bir cavab yazın

Sizin e-poçt ünvanınız dərc edilməyəcəkdir. Gərəkli sahələr * ilə işarələnmişdir

Həmçinin bax
Close
Back to top button