我可以使用SQL查询成功计算一个股票代码的200天移动平均线,我现在正在尝试创建一个VIEW。我被困在以下查询似乎逻辑但有一个SQL错误 “#1054 - 'where子句'中的未知列'equity.TickerID'”
SELECT AVG(Close) AS MA200 FROM equity
INNER JOIN
(
SELECT Close
FROM equity_pricehistory
WHERE TickerID = equity.TickerID
ORDER BY Timestamp
DESC LIMIT 0,200
) as Y
答案 0 :(得分:0)
知道了。这样就可以了。
SELECT equity.id, AVG( equity_pricehistory.close ) AS MA200
FROM equity
INNER JOIN equity_pricehistory ON equity_pricehistory.TickerID = equity.id
GROUP BY equity_pricehistory.TickerID
ORDER BY Timestamp DESC
LIMIT 0 , 200
我要指出的一件事是,如果您已经知道所需的所有TickerID都在equity
中,那么您可以完全忽略整个equity_pricehistory
表。