Another use of LEAD function
SELECT QueueId,TaskId,TaskName,Rundatetime FROM(
SELECT T.QueueId,T.TaskId,T.TaskName,T.RunDateTime, LEAD(taskid,MaximumQueueLength)OVER(PARTITION BY T.QueueId ORDER BY taskid DESC)lid FROM Tasks T
INNER JOIN Queue Q ON T.QueueId=Q.QueueId
)T1 WHERE lid IS NULL ORDER BY TaskName
EDIT: Works with SQL Server 2012 and above
--------------------------------------------------------------------------------------------------
I am just an another naive wannabe DBA trying to learn SQL Server