SQL Server B-Tree: Index Seek on a String
StackOverflow dbo.Users — nonclustered index on Location
SELECT
Id, Location
FROM
dbo.Users
WHERE
Location = 'Helsinki';
page reads:
1
2
3
4
Root
Level 3
Intermediate
Level 2
Intermediate
Level 1
Leaf · keys
Level 0
Root page 1:900
Aachen → 1:910
Madrid → 1:911
Seattle → 1:912
Aachen → 1:910
Intermediate page 1:910
Aachen → 1:920
Denver → 1:921
Kyoto → 1:922
⋯
Denver → 1:921
Intermediate page 1:911
Madrid → …
…
Intermediate page 1:912
Seattle → …
…
⋯
Intermediate page 1:920
Aachen → …
…
Intermediate page 1:921
Denver → 1:930
Geneva → 1:931
Jakarta → 1:932
⋯
Geneva → 1:931
Intermediate page 1:922
Kyoto → …
…
⋯
Page 1:930
Denver · Id 19,406
Dublin · Id 4,588
Frankfurt · Id 33,072
⋯
Page 1:931
Geneva · Id 41,209
Hamburg · Id 8,114
Helsinki · Id 26,837
Helsinki · Id 590,442
Houston · Id 12,006
Istanbul · Id 77,351
Page 1:932
Jakarta · Id 60,113
Johannesburg · Id 2,290
Kraków · Id 88,554
⋯
⋯