🔸 وقتی جدولی در دیتابیس (مثلاً با ۱ میلیون رکورد) داشته باشید و روی فیلد email ایندکس نساخته باشید، دیتابیس برای پیدا کردن یک رکورد مجبور است تکتک سطرها را از بالا تا پایین بررسی کند که به آن Sequential Scan (یا Full Table Scan) میگویند و پیچیدگی زمانی آن O(N) است.
🔸 ساختمان داده Index (معمولاً بر پایه درخت B-Tree) ساختاری مشابه فهرست کتاب دارد که پیچیدگی جستجو را به O(\log N) کاهش میدهد.
-- وضعیت کند برای جدول بزرگ (بررسی تک تک سطرها)
SELECT * FROM users WHERE email = 'target@example.com';
-- راه حل: ساخت ایندکس برای جستجوی فوری
CREATE INDEX idx_users_email ON users(email);
-- حالا جستجوی بالا به جای بررسی میلیونها سطر، از ساختار درختی ایندکس استفاده میکند.
🆔 @rezadolati01