Hiciste la tarea bastante fácil con tu sqlfiddle así como tu intento de resolver el problema con la consulta Select.
Funciona de la manera que usted quiere, supongo, y todo lo que tengo que hacer es agregar una combinación izquierda más con la tabla de categorías (no sé por qué no pudo unirse a la categoría ya que funciona correctamente).
Asi que. He editado su consulta de selección de la siguiente manera:
select Products.name, Filters.*,Categories.id from Products
left join Filters
on Products.name LIKE CONCAT('%',Filters.filter,'%')
left join Categories
on Categories.name = Filters.category_name
GROUP BY Products.name;
Obtendrá los resultados que desea con esta consulta.
Ahora, para actualizar Products
tabla con el resultado de esta consulta, puede hacer lo siguiente:
update Products
left join Filters
on Products.name LIKE CONCAT('%',Filters.filter,'%')
left join Categories
on Categories.name = Filters.category_name
set Products.category_name = Filters.category_name,
Products.category_id = Categories.id;
Haga clic aquí para ver la demostración funcional
¡Espero que ayude!