-2

このコードを Oracle で実行しようとすると、エラーが発生し続けます

SELECT id,
       Max(id),
       artist AS"Artist"
FROM   d_songs
WHERE  duration IN( '3 min', '6 min', '10 min' )
HAVING id < 50
GROUP  BY id; 

私は何を間違っていますか?これは表現によるグループではないと言っています。

4

1 に答える 1

2

編集:

編集したら、ドキュメントからこれを参照してください。

MIN、MAX、SUM、COUNT などの GROUP BY 関数を含む SELECT ステートメントを実行しようとしました。GROUP BY 句にない SELECT リスト内で式を実行しようとしました。

Group Byの前に配置し、Group ByHaving句にすべてのフィールド (max ではない) も含めます。

SELECT id, max(id), artist as "Artist"
From d_songs
Where duration in('3 min', '6 min', '10 min')
where id < 50
Group by id, artist

詳細については、ドキュメントを表示できます

于 2013-03-28T23:23:57.347 に答える