Acabo de romper tu or
condición para hacer múltiples join
con la misma tabla que se muestra a continuación para lograr el resultado esperado,
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);