Problem:
Manchmal möchte man einen Datensatz nur mit einem einzigen spezifischen Unter-Datensatz verknüpfen.
Das Problem ist, dass man mit einer Unterabfrage und TOP 1 in Kombination mit INNER JOIN nicht weiter kommt, weil man die übergeordnete Abfrage nicht als Filter nutzen kann.
Antwort:
Ersetzt man LEFT JOIN durch OUTER APPLY, kann man die übergeordnete Abfrage als Filter nutzen.
FROM [dbo].[A]
OUTER APPLY (Select top 1
[RID],
[BBB]
from [dbo].[B]
where RID = [A].RID
) as c