2011-12-22 64 views
0

我有一張有2列的表格。第一個是自動增量,第二個保存一些數值。我需要以這樣的方式對行進行分組:獲得N個連續行(使用自動增量字段),對相應數值的平均值進行計數,並將這1行添加到另一個表中。任何人都可以用GROUP BY語句幫助我嗎?(My)中的數據壓縮SQL

回答

1

不需要羣組?

SELECT floor(id/5) cnt,avg(2ndcol) from <table> group by cnt; 

這將得到5行的組並返回2ndcol的平均值。例如http://www.sqlize.com/y4mTuDF1Cy

avg() docs

市價修改意見

+0

當然這個一會的工夫,但我需要得到的不僅是1..10但11..20,21..30等。另外,如果我需要按10進行分組 - 這很容易做 - >我只需要在左邊添加前導零和分組(計數器,長度(計數器)-1)。奇怪,但必須工作。但我需要由5條記錄組成,這就是問題:) – DEgorov 2011-12-22 10:19:22

+0

@DEgorov像這樣 - > http://stackoverflow.com/questions/1113896/group-by-id-range - >這裏的例子 - > http:/ /www.sqlize.com/y4mTuDF1Cy – ManseUK 2011-12-22 10:23:58

+0

非常感謝! GROUP BY樓層(ID/5)必須工作! – DEgorov 2011-12-22 10:28:53