Add the tblSystem index to systemName with fkCompanyID enabled.
create index IX_tblSystem_systemName on tblSystem(systemName) include(fkCompanyID)
Rewrite your query to select the first 25 values ββ(with relationships) from tblSystem in the tblSystem ordered by systemName , and then join tblCompany to get the 25 values ββyou need.
Depending on if fkCompanyID is nullable or not, you need to filter out null values ββin the where clause in the view.
select top (25) S.systemName, C.name from ( select top (25) with ties S.fkCompanyID, S.systemName from tblSystem as S where S.fkCompanyID is not null order by S.systemName ) as S inner join tblCompany as C on S.fkCompanyID = C.pkCompanyID order by S.systemName, C.name
You still have to use the top (n) sort operator, but it will only sort the 25 rows (+ links) that you got from the tblCompany merged with tblCompany .

source share