Jeśli nie chcesz polegać na swojej kolumnie „id” (może nie być sekwencyjna), możesz po prostu utworzyć własną zmienną do grupowania według zmian co 4 wiersze, na przykład:
SET @rank = 0;
SELECT AVG(value), CEIL((@rank:[email protected]+1)/4) AS rank FROM "your_table" GROUP BY rank;