Je viens de casser votre or
condition en faire plusieurs join
avec le même tableau comme ci-dessous pour atteindre votre résultat attendu,
select distinct d.groupname from docs d
join sm s1 on
d.groupname like concat(s1.code,'%')
join sm s2 on
d.groupname like concat('%',s2.code);