【发布时间】:2017-09-10 16:27:24
【问题描述】:
我一直在到处寻找,这将是向某人寻求帮助的最佳网站。我必须进行 SQL 查询来检查特定航班的预订总量,然后根据系统应提供的预订数量来选择飞机。第一个查询有效,它找到预订总数,我认为我有选择飞机的案例陈述权,但我找不到物理连接两个查询的方式,我尝试使用统一、内连接和嵌套查询,但似乎找不到预订的座位总数(第一次查询的答案),请帮帮我。
第一个 SQL 查询(查找预订总数)
SELECT count(bookingdetails.FlightID)AS TotalNumberOfSeatsBooked,flightdetails.FlightID
FROM bookingdetails, bookingdetails AS TEMP,flightdetails
WHERE bookingdetails.BookingID = TEMP.BookingID
AND bookingdetails.FlightID= flightdetails.FlightID
Group BY FlightID;
第二个 SQL 查询(根据预订的数量选择飞机类型)
SELECT CASE chooseaircraft
WHEN TotalNumberOfSeatsBooked <= 110 THEN 'BA 146-200'
ELSE'Embraer 170'
END AS ChoiceOfAircraft
FROM aircrafttype;
非常感谢大家 在得到一个答案后,我认为将两个查询合并在一起是朝着正确的方向前进,代码现在在子查询中显示座位总数和航班号,但飞机列的选择仍然不显示,但如果您运行通过它自己查询我知道我快要得到这个了,我将不胜感激任何有助于在 SQL 中变得更好的帮助,我现在拥有的代码是:
SELECT count(bookingdetails.FlightID)AS TotalNumberOfSeatsBooked,flightdetails.FlightID
FROM bookingdetails, bookingdetails AS TEMP,flightdetails
WHERE bookingdetails.BookingID = TEMP.BookingID
AND bookingdetails.FlightID= flightdetails.FlightID
AND bookingdetails.FlightID= flightdetails.FlightID IN(
SELECT CASE WHEN count(bookingdetails.FlightID) <= 110 THEN 'BA 146-200'
ELSE'Embraer 170'
END AS ChoiceOfAircraft
FROM bookingdetails,flightdetails)
Group BY FlightID;
【问题讨论】:
标签: mysql sql database join subquery