2014-11-25 5 views
1

мне нужно получить код SQL для «Количество свободных мест на рейс F1000 на 10/10/2014.SQL код вычитанием

Но я запутался о том, как минус от емкости с сиденьями.

Мой стол которые, как следует:

Plane

PK-PlaneSerial 
Capacity 

Расписание

PK-RouteID 
PK-FlightDate 
FK-PlaneSerial 
ScheduleTime 

Бронирование

PK-ResID 
PK,FK-RouteID 
FK - FLightDate 
Price 

Я знаю, что нужно будет вычитать мою Plane емкость с общим количеством отелей, но получил сообщение об ошибке. У кого-нибудь есть идея?

+4

Редактировать свой вопрос и добавить запрос, возвращающий сообщение об ошибке. Также объясните, что такое ошибка. –

ответ

1
SELECT s.RouteID, (MAX(p.Capacity) - p.Capacity) AS Numbofavailableseats 
FROM Plane p 
INNER JOIN Schedule s ON p.PlaneSerial = s.PlaneSerial 
INNER JOIN Reservation r ON s.RouteID = r.RouteID 
WHERE s.RouteID = 'F1000' AND s.FlightDate = '10/10/2014' 
+0

спасибо, но у меня есть эта ошибка 'Ошибка в строке 1, столбец 19: ORA-00979: не выражение GROUP BY' – XGAl

+0

попробуйте сейчас с развёрнутыми скобками – Matt

+0

это будет работать только при условии, что каждая оговорка имеет только одно место, связанное с ним. Если это не так, необходимо пересмотреть структуру таблицы. – Shankar

Смежные вопросы