sql >> データベース >  >> RDS >> Mysql

MySQLからnパーセンタイルを選択します

    これにより、約40パーセンタイルが得られ、行の40%がそれよりも小さい行が返されます。 40パーセンタイルに正確に一致する行はないため、40パーセンタイルからの距離で行を並べ替えます。

    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. MySQLShowユーザー

    2. MySQLに現在の日付+30日としてデフォルト値を挿入

    3. mysqlが変更されたときにプッシャーを呼び出す

    4. テーブルユーザーのインデックスの解決が壊れています。それを修理してみてください