Você pode usar o
find_in_set
função? SELECT x FROM tblname1 t1
inner join tblname2 t2 on find_in_set (t1.id, REPLACE(t2.content,'|',',')) > 0
where t2.dataid = 'y';
O
find_in_set
A função retorna a posição do primeiro argumento dentro do segundo argumento. Se o resultado for>0, o primeiro argumento foi encontrado. Consulte http://dev. mysql.com/doc/refman/5.7/en/string-functions.html#function_find-in-set