FIND_IN_SET()
lze použít pouze k hledání jedné hodnoty v seznamu odděleném čárkami, nefunguje se dvěma seznamy.
Budete ji muset volat samostatně pro každou hodnotu.
SELECT * FROM tablename
WHERE FIND_IN_SET('12', category_id) OR FIND_IN_SET('13', category_id) OR FIND_IN_SET('15', category_id)
Bylo by lepší, kdybyste své schéma normalizovali namísto použití seznamů oddělených čárkami. Pokud vytvoříte tabulku many-to-many s ID kategorií, můžete udělat:
SELECT t1.*
FROM tablename AS t1
JOIN item_categories AS c ON t1.id = c.table_id
WHERE c.category_id IN (12, 13, 15)