0
ID   Year   Month   Price
001  1990    JAN      6
001  1990    FEB      8
             ...
001  1990    DEC      4
001  1991    JAN      7
      ...
001  2000    DEC      6
002  1990    JAN      7
...

上記のようにフォーマットされたテーブルが与えられた場合、各アイテムの (各年の) 平均年間価格をどのように見つけることができますか? たとえば、次のような新しいテーブルが必要です。

ID   Year   Avg_price
001  1990     7
001  1991     12
      ...
002  1990     11
...

次のコードを試してみました: SELECT ID, Year, AVG (Price) FROM DATA GROUP BY ID, Year

しかし、最終的には各平均で 0 になります。ただし、順序付けは正しく機能しているように見えるので、これがなぜなのかはわかりません。どんな助けでも大歓迎です。

EDIT:私のSQLコードには何も問題がなかったことがわかりました。答えは単なるバグだったと思います。皆様、ご回答ありがとうございます。

4

1 に答える 1

0

あなたのSQLは私にはうまく見えます(MS SQLでチェックしました)。

SQL フィドルのデモ

MySQL で再確認してください。;-)

于 2014-11-19T17:11:21.903 に答える