Şö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