0
私はSQLとサブクラスを初めて使います。サブクラスを単独で実行すると、正しいデータ出力が得られます。私は完全なクエリを実行するときしかし、私はエラーメッセージを取得Select SQLで式が見つからない
SELECT * 3行目でエラー:ORA-00936:
SELECT MAX( SELECT SUM( ALLOCATION.HourlyRate * ACTION.HrsWorked ) FROM ALLOCATION INNER JOIN ACTION ON ((ACTION.ActId = ALLOCATION.ActId) AND (ACTION.EmpId = ALLOCATION.EmpId)) GROUP BY (ALLOCATION.ActId) ) FROM ALLOCATION GROUP BY (ALLOCATION.ActId)
SOLUTION:行方不明の式ここで
は私のコードです:
SELECT MAX(sum_total_pay)
FROM
(
SELECT SUM(ALLOCATION.HourlyRate * ACTION.HrsWorked) AS sum_total_pay
FROM ALLOCATION
INNER JOIN ACTION
ON ((ACTION.ActId = ALLOCATION.ActId) AND (ACTION.EmpId = ALLOCATION.EmpId))
GROUP BY (ALLOCATION.ActId)
);
は、これらすべての無用の括弧削除してみてください - 周りに特にを'group by'節の列しかし、 'select'リスト内のスカラーサブクエリは実際には意味をなさない。あなたは正確に何を達成しようとしていますか? –
私は派生テーブルベースのクエリを代わりに行うでしょう。 SUM()でSELECTを実行することはできません。 – jarlh
私は、特定のアクティビティIDのhourlyRate列とhrsWorked列のすべての製品の合計である最大 '合計金額'を見つけようとしています。アクティビティ2 'testin'は(4 * 10 + 5 * 8)の合計支払いを持つことができますが、アクティビティ1 'pythonコーディング'は(3 * 4 + 5 * 10.5 + 12 * 16)これら2つの最大総支払額を求める。 – Jed