• I agree with the other posters that it's not quite clear what you are trying to achieve, but I think a simple CROSS APPLY will give you the result you want (at least it gives me the same result set as your queries).

    SELECT TOP 100

    c.comp_id,

    c.sup_code,

    c.sup_name,

    c.sup_ac_code,

    s.site_id AS ac_id1

    FROM

    COMP_AC c

    CROSS APPLY

    SITE_AC s

    WHERE

    s.site_id = '0a1903120217062077241419'

    ORDER BY

    c.comp_id