我想創建一個查詢,返回一個事物的名稱和國家在另一個表中的最大次數。SQL ORA-00979錯誤拋出
這裏的結構:
ShipModels(mname, type, country, numGuns, gunSize)
Ships(sname, hasModel, launchYear)
Battles(bname, year)
Outcomes(ship, battle, result)
我已經嘗試了很多不同的東西,但不能讓它開始工作。這是我當前的查詢:
SELECT ship, country
FROM ShipModels, Ships, Outcomes
WHERE hasModel = mname AND ship = sname
GROUP BY ship
HAVING COUNT(ship) >=
(SELECT COUNT (ship) FROM Outcomes GROUP BY ship);
Oracle錯誤:
ERROR at line 1:
ORA-00979: not a GROUP BY expression
從我已閱讀,當出現在SELECT語句的聚合函數將引發此錯誤,但是... ... ,沒有。有什麼我失蹤?我怎樣才能使這個工作?
如果你打算使用具有COUNT(船),我相信你需要包括COUNT(船)在你的SELECT – WebChemist