sql >> Databasteknik >  >> RDS >> Mysql

Att få snittet för de 10 bästa eleverna från varje skola

Genom att använda denna teknik .

select sch_code,
       schabbrev,
       ROUND( AVG( totpct_stu ), 1 ) AS top10
from   (select sch_code,
               schabbrev,
               totpct_stu,
               @num := if(@group = sch_code, @num + 1, 1) as row_number,
               @group := sch_code as dummy
        from   test_table
        order by sch_code, totpct_stu desc) as x
where  row_number <= 10
GROUP BY sch_code,
       schabbrev



  1. Rita flera polygoner på Google Maps API v3 från MySQL-databas

  2. Hur man aktiverar SQL Server Agent XPs med T-SQL

  3. Vad betyder <> i mysql-frågan?

  4. Hur man får värden för varje dag under en månad