我有一个名为LOGENTRY的简单表,其中包含名为“DATE”和“COST”的字段。例如:单个字段(最适合的行)的MySQL斜率(趋势)
+--------------+-------+
| DATE | COST |
+--------------+-------+
| MAY 1 2013 | 0.8 |
| SEP 1 2013 | 0.4 |
| NOV 1 2013 | 0.6 |
| DEC 1 2013 | 0.2 |
+--------------+-------+
我想找到成本场随时间的斜率(的范围内选择的行),导致 SLOPE = -0.00216(这相当于Excel的SLOPE函数,又名线性回归) 。
有没有简单的方法来选择成本的斜率?如果我做数学在调用语言(PHP)我能找到的斜率:
SLOPE = (N * Sum_XY - Sum_X * Sum_Y)/(N * Sum_X2 - Sum_X * Sum_X);
我看到贴一些类似的问题,但他们更复杂。我试图剥离这个例子到最简单的情况 - 所以我可以理解答案:)这里是尽可能接近...但MYSQL抱怨附近的语法: 'float))AS Sum_X,SUM(CAST (LOGENTRY.DATE为float)* CAST(LOGENTRY.DATE”
SELECT
COUNT(*) AS N,
SUM(CAST(LOGENTRY.DATE AS FLOAT)) AS Sum_X,
SUM(CAST(LOGENTRY.DATE AS FLOAT) * CAST(LOGENTRY.DATE AS FLOAT)) AS Sum_X2,
SUM(LOGENTRY.COST) AS Sum_Y, SUM(LOGENTRY.COST * LOGENTRY.COST) AS Sum_Y2,
SUM(CAST(LOGENTRY.DATE AS FLOAT) * LOGENTRY.COST) AS Sum_XY
FROM LOGENTRY
与此信息no人们可以回答。当你发布一个问题,请发布样本数据,结构和期望的输出 – 2013-02-15 17:13:00
可能的重复:http://stackoverflow.com/questions/9084761/how-to-calculate-the-slope-in-sql – sgeddes 2013-02-15 17:16:54
我看到张贴9084761但它更复杂(附加字段KEYWORD)。我试图保持简单,所以我和其他人可以更好地理解它。 – TSG 2013-02-15 17:23:18