Lý do là vì bạn đang đưa bảng bên phải vào WHERE mệnh đề. Bạn nên chuyển nó sang ON điều kiện của LEFT JOIN :
Select P.appId, S.stepId, S.section, P.start
From #appSteps S With (NoLock)
Left Join #appProgress P On S.stepId = P.stepId
And P.appId = 101
Where S.section Is Not Null
Lý do nó làm được điều này là vì WHERE mệnh đề được đánh giá sau LEFT JOIN , sau đó lọc ra NULL của bạn kết quả từ LEFT JOIN .
Bao gồm bảng bên phải của LEFT JOIN (hoặc bảng bên trái của RIGHT JOIN ) trong WHERE mệnh đề chuyển đổi hiệu quả OUTER JOIN vào một INNER JOIN .