2014-11-25 54 views
1

我需要獲得「對飛行F1000可用座位數的SQL代碼上10/10/2014SQL代碼減法

但我對如何減去了與座椅的能力。

我的表困惑被如下:

平面

PK-PlaneSerial 
Capacity 

附表

PK-RouteID 
PK-FlightDate 
FK-PlaneSerial 
ScheduleTime 

預訂

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

我知道我會需要減去我的預訂總數平面容量,但收到錯誤。 任何人有任何想法?

+4

編輯您的問題並添加返回錯誤的查詢。另外,解釋錯誤是什麼。 – 2014-11-25 14:00:12

回答

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 2014-11-25 14:06:40

+0

現在嘗試與diffeent括號 – Matt 2014-11-25 14:08:40

+0

這隻會在假設每個保留只有與之相關的一個座位。如果情況並非如此,表格結構需要重新檢查 – Shankar 2014-11-25 14:10:21