この質問が以前に尋ねられていたら、申し訳ありません。検索を試みましたが、他のユーザーと同じ言葉遣いを使用していない可能性があるため、検索しても何もヒットしませんでした。
6000 行をわずかに超えるテーブルがあり、特定の列の前の n 行の平均を計算しようとしています。この場合、FOREX通貨ペアの終値。(PHP::Trader を使用できることはわかっていますが、サーバーにインストールするためのアクセス権がありません。)
私はもう試した :
SELECT *, (SELECT AVG(close)
FROM `2015_EURUSD_60min`
WHERE (id > (id - 20) AND id <= id)
)
FROM `2015_EURUSD_60min`
これにより、すべての行で同じ数が生成されましたが、その理由はわかりません。列のすべての値id
は連続しています。それを確認するためにデータをクリーンアップしました。
私のSELECT
発言で何が間違っていましたか?