Nejprve jsem hledal něco, co mi nedá prázdné sloupce s levým spojením, tak jsem použil,
coalesce(TableC.SomeColumn, -1) As SomeColumnHeHe
Pak jsem narazil na problém, kdy jsem potřeboval vybrat pouze top 1 z levého spojení, takže jsem použil OUTER APPLY, jak je uvedeno níže,
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