sql >> Databasteknik >  >> RDS >> Mysql

Välj n:te percentilen från MySQL

Detta ger dig ungefär den 40:e percentilen, den returnerar raden där 40 % av raderna är mindre än den. Den sorterar rader efter hur långt de är från den 40:e percentilen, eftersom ingen rad får falla exakt på den 40:e percentilen.

SELECT m1.field, m1.otherfield, count(m2.field) 
  FROM mydata m1 INNER JOIN mydata m2 ON m2.field<m1.field
GROUP BY 
   m1.field,m1.otherfield
ORDER BY 
   ABS(0.4-(count(m2.field)/(select count(*) from mydata)))
LIMIT 1


  1. Byta ut tabellpartitioner i SQL Server:En genomgång

  2. SQL Server Stored Procedures från Oracle®

  3. Att få dubbla inmatningsfel från Hibernate, är MySQL att skylla på?

  4. sql join two table