Můžete použít find_in_set
funkce?
SELECT x FROM tblname1 t1
inner join tblname2 t2 on find_in_set (t1.id, REPLACE(t2.content,'|',',')) > 0
where t2.dataid = 'y';
find_in_set
funkce vrací pozici prvního argumentu v rámci druhého argumentu. Pokud je výsledek>0, pak byl nalezen první argument.
Viz http://dev. mysql.com/doc/refman/5.7/en/string-functions.html#function_find-in-set