2011-12-22 3 views
0

2 개의 열이있는 테이블이 있습니다. 첫 번째는 자동 증가 단위이고 두 번째 숫자는 일부 숫자 값을 보유합니다. 그런 식으로 행을 그룹화해야합니다. 자동 증가 필드를 사용하여 N 개의 연속 행을 가져와 해당 숫자 값의 평균을 계산하고이 새 행을 다른 테이블에 놓습니다. 누구든지 GROUP BY 문을 도와 줄 수 있습니까?(내) SQL 데이터 압축

답변

1

그룹별로 필요하지 않으십니까? 이 5 행의 그룹을 얻을 2ndcol의 평균을 반환합니다

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

. 예 http://www.sqlize.com/y4mTuDF1Cy

avg() docs

이 하나가 작동 의견

+0

물론 따라 편집,하지만 난뿐만 아니라 1..10하지만 11..20, 21..30 등을 얻을 필요가있다. 게다가, 10으로 그룹화해야한다면 - 더 쉽게 할 수 있습니다. -> 왼쪽에 0을 추가하고 왼쪽에 그룹화 (카운터, 길이 (카운터) -1)하면됩니다. 이상하지만 작동해야합니다. 하지만 5 개의 레코드로 그룹화해야하는데 그게 문제입니다. – DEgorov

+0

@DEgorov 이와 비슷한 것 -> http://stackoverflow.com/questions/1113896/group-by-id-range -> example here -> http :// /www.sqlize.com/y4mTuDF1Cy – ManseUK

+0

고마워요! GROUP BY 층 (ID/5)이 작동해야합니다! – DEgorov