Вы можете несколько оптимизировать свои подзапросы.Эти проекции здесь:
(SELECT TOP 1 pageID FROM page WHERE mjc = 'ABC' ORDER BY createdOn DESC),
(SELECT TOP 1 pageName FROM page WHERE mjc = 'ABC' ORDER BY createdOn DESC),
(SELECT TOP 1 createdOn FROM page WHERE mjc = 'ABC' ORDER BY createdOn DESC),
Можно также переписать так:
SELECT t.pageID AS LastCreatedId,
t.pageName AS LastCreatedName,
t.createdOn AS LastCreatedDate
FROM (SELECT TOP 1 pageID, pageName, createdOn
FROM page where mjc = 'ABC' ORDER BY createdOn DESC) t
Или в более широком контексте
SELECT
mjc,
name,
t.pageID AS LastCreatedId,
t.pageName AS LastCreatedName,
t.createdOn AS LastCreatedDate
FROM mags,
(SELECT TOP 1 pageID, pageName, createdOn
FROM page where mjc = 'ABC' ORDER BY createdOn DESC) t
WHERE mjc IN ('ABC')
Это позволит избежатьзапустить один и тот же подзапрос 3 раза.Такую же оптимизацию можно выполнить для LastEditedId, LastEditedName, LastEditedDate