Вы можете использовать функцию PATINDEX:
SELECT
CAST(SubString(REPLACE(Title,'-',''),
PATINDEX('%[0-9]%',REPLACE(Title,'-','')),
Len(REPLACE(Title,'-','')))
AS INT)
AS [Title Number],*
FROM [Your table-name here]
ORDER BY [Title Number]
Редактировать: теперь будет работать с дефисом.
Примечание: не будет работать, если нецифровая часть заголовка имеет цифры илиимеет дефис ('-').