sql >> Databasteknik >  >> RDS >> Mysql

MYSQL:Lediga/ockuperade rum som nu

Din fråga är ganska svår att följa eftersom kolumnerna i din fråga inte matchar kolumnerna i exempeldata. Dessutom har du inga önskade resultat.

Jag tror att du måste flytta datumjämförelserna till en on sats och leta sedan efter icke-matchningar i 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 ;



  1. Oracle SQL -- Ta tag i värden från flera rader

  2. bbPress:Hur man hittar mappningar av bilagor till deras respektive inlägg

  3. MySQL "NOT IN" fråga 3 tabeller

  4. Fråga för att hitta inlägg med en exakt uppsättning taggar (många-till-många-relation)