Najpierw szukałem czegoś, co nie da mi pustych kolumn z lewym złączeniem, więc użyłem,
coalesce(TableC.SomeColumn, -1) As SomeColumnHeHe
Potem natknąłem się na problem, w którym musiałem wybrać tylko top 1 z lewego połączenia, więc użyłem OUTER APPLY, jak pokazano poniżej,
SELECT Top(1)
TableA.*,
TableB.*,
someFunction(TableA.ID),
coalesce(TableC.someColumn, -1) As SomeColumnExample,
TempTable.IDA
FROM
TableA INNER JOIN TableB ON TableA.ID = TableB.IDA
OUTER APPLY
(SELECT TOP(1) * FROM TableC where TableC.IDA = TableA.IDA Order By DateAdded Desc ) As TempTable
Where TableA.ID = @ParaID
Order By TableC.DateTime Desc