Du gjorde uppgiften ganska enkel med din sqlfiddle samt ditt försök att lösa problemet med Select-fråga.
Det fungerar som du vill antar jag och allt jag behöver göra är att lägga till ytterligare en kvarvarande koppling med kategoritabell (IDK varför du inte kunde gå med i kategori eftersom den fungerar som den ska).
Så. Jag har redigerat din urvalsfråga enligt följande:
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;
Du får de resultat du vill ha med den här frågan.
Nu, för att uppdatera Products
tabell med resultatet av den här frågan kan du göra följande:
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;
Klicka här för en fungerande demo
Hoppas det hjälper!