Mysql
 sql >> Base de données >  >> RDS >> Mysql

MYSQL :Chambres vacantes / occupées comme maintenant

Votre question est assez difficile à suivre car les colonnes de votre requête ne correspondent pas aux colonnes des exemples de données. De plus, vous n'avez aucun résultat souhaité.

Je pense que vous devez déplacer les comparaisons de dates dans un on clause puis recherchez les non-correspondances dans le where :

select rct.room_category AS room_category,
       group_concat(rc.room_name separator ',') AS vacant_beds
from room_charges rc join
     room_category rct
     on rc.room_category = rct.id left join
     patient_detail pd
     on rc.id = pd.room_name and
        (pd. discharge_date_time is null or
         curdate() between admission_date_time and discharge_date_time)
where pd.id is null
group by rc.room_category ;