Sql 如何获得可用座位的数量
这是表格:Sql 如何获得可用座位的数量,sql,count,Sql,Count,这是表格: 航班(航班ID,最大容量) FlightBooking(BookingID、FlightID、NumSets、Status),状态为:已预订、已持有、已过期、已取消 我已经知道如何显示保留和保留的座位,但我在计算可用座位时遇到了问题,可用座位应该等于MaxCapacity减去保留和保留的座位 有什么建议吗 SELECT f.MaxCapacity - COUNT(b.Status) FROM Flight f INNER JOIN FlightBooking b ON f.Fligh
航班(航班ID,最大容量)
FlightBooking(BookingID、FlightID、NumSets、Status),状态为:已预订、已持有、已过期、已取消 我已经知道如何显示保留和保留的座位,但我在计算可用座位时遇到了问题,可用座位应该等于MaxCapacity减去保留和保留的座位 有什么建议吗
SELECT f.MaxCapacity - COUNT(b.Status)
FROM Flight f
INNER JOIN FlightBooking b
ON f.FlightID = b.FlightID
WHERE b.Status IN ('Reserved','Held')
GROUP BY f.FlightID
select flightid,
max(f.maxcapacity) - count(case when fb.status in ('reserved', 'held')
then 1
else 0
end)
from flight f
left outer join flightbooking fb on fb.flightid = f.flightid
group by f.flightid