seniorT-SQL

What is index seek vs index scan vs key lookup in SQL Server?

Updated May 17, 2026

Short answer

Seek uses targeted navigation in an index, scan reads many/all rows, and key lookup fetches missing columns from clustered index.

Deep explanation

Index Seek navigates B-tree structures directly to matching rows using predicates, making it highly selective. Index Scan reads the entire index when predicates are non-sargable or missing indexes. Key Lookup occurs in non-clustered indexes when requested columns are not present in the index leaf node, causing additional I/O against the clustered index. The optimizer chooses based on selectivity, statistics, and cost estimates.

Unlock with a Pro subscription to view this section.

View pricing

Real-world example

No real-world example available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Common mistakes

No common mistakes listed yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Follow-up questions

No follow-up questions available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

More T-SQL interview questions

View all →