For allpages-locked tables where clustered indexes are used to perform the scans, the search arguments on the index are used to position the search on the first matching row of each table. The total cost of the query is the cost of scanning forward on the data pages of each table. For example, with clustered indexes on t1(c1) and t2(c1), the query on two allpages-locked tables can use a full-merge join:
select t1.c2, t2.c2 from t1, t2 where t1.c1 = t2.c1 and t1.c1 >= 1000 and t1.c1 < 1100
If there are 100 rows that qualify from t1, and 100 rows from t2, and each of these tables has 10 rows per page, and an index height of 3, the costs are:
3 index pages to position the scan on the first matching row of t1
Scanning 10 pages of t1
3 index pages to position the scan on the first matching row of t2
Scanning 10 pages of t2