select
a.code
, aname
, bname
, cname
from (
select
code
, bName
, ROW_NUMBER() over (partition by code order by code) as br
from @b-2
) b
right join (
select
code
, cname
, ROW_NUMBER() over (partition by code order by code) as cr
from @C
) c on b.code = c.code and b.br = c.cr
right join @a a on c.code = a.code