我有一个SQL命令,它使用lag来列出表中的数据,并与之前的值进行计算,以计算增加的百分比。在我的本地主机上它可以工作,但在我的主机上它不断给出此错误,我使用 mysql。
CREATE TABLE `results` ( `id` int(11) NOT NULL, `price` int(11) NOT NULL, `Date` date DEFAULT NULL, `grown` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
这是我使用的命令
SELECT *, - 100.0 * ( 1-price/ LAG(price) OVER (ORDER BY results.id)) AS Grown FROM results AS r ORDER BY r.id;
您有“ OVER (ORDER BY t.Id))”,但没有名为 t 的表/别名