Şöyle varsayım yapacak olursam;

SELECT yl.yemekler, COUNT(b.begeni) as toplam_begeni,
       ROUND((SUM(CASE WHEN b.begeni = 3 THEN 1 ELSE 0 END) / COUNT(b.begeni)) * 100, 2) as iyi_yuzdesi,
       ROUND((SUM(CASE WHEN b.begeni = 1 THEN 1 ELSE 0 END) / COUNT(b.begeni)) * 100, 2) as kotu_yuzdesi
FROM yemek_listesi yl
LEFT JOIN begeniler b ON yl.id = b.yemek_id
WHERE yl.tarih = '2022-12-18'
GROUP BY yl.yemekler
ORDER BY toplam_begeni DESC;


Sonuç;




yani memnuniyet_durumu tablosuna bir sütun daha dahil etmeniz gerekecek oda yemek listesinin ID numarasını, sonra listede vermiş olduğum örnek sorguyu kullanırsınız yüzdeleri ve toplam beğenileri yazdırabilirsiniz