Du kunne skrive noget som
SELECT product.*, bottom_category.name, top_category.name
FROM product
LEFT JOIN bottom_category ON bottom_category.id = product.bottom_category_id
LEFT JOIN top_category ON top_category.id = bottom_category.top_category_id
ORDER BY top_category.id,bottom_category.id
Men hvis du har virkelig store tabeller, så glem bare 3. normal form og tilføj navne for kategorier i produkttabellen. Men kun hvis du har rigtig store borde med kategorier.
UPD Tilføj ORDER BY