Using Logic of Inaccessible Function

hi

hope this helps :winking_face_with_tongue:

This avoids scalar variables entirely and keeps everything set-based.

SELECT *
FROM SomeTable S
CROSS APPLY
(
    SELECT TOP (1)
           F1 AS Field_O
    FROM Table1
    WHERE ODGUID = @Param1
) O
WHERE S.Field1 = O.Field_O;

Equivalent structure using a CTE:

DECLARE @Param1 INT = 100;
DECLARE @Param2 VARCHAR(50) = 'ABC';

;WITH CTE_O AS
(
    SELECT TOP (1)
           F1 AS Field_O
    FROM Table1
    WHERE ODGUID = @Param1
)
SELECT
       ...
FROM SomeTable ST
JOIN OtherTable OT
    ON ST.ID = OT.ID
CROSS JOIN CTE_O O
WHERE ST.Col1 = @Param1
  AND ST.Col2 = @Param2
  AND ST.Field1 = O.Field_O;