Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Atribuição eficiente de percentil/rank em MYSQL


Eu não posso testar isso, mas você pode tentar algo como:
update table t
set mi_percentile = (
    select count(*)
    from table t1
    where M1 < t.M1 / (
        select count(*)
        from table));

ATUALIZAR:
update test t
set m1_pc = (
    (select count(*) from test t1 where t1.M1 < t.M1) * 100 /
    ( select count(*) from test));

Isso funciona no Oracle (o único banco de dados que tenho disponível). Lembro-me de obter esse erro no MySQL. É muito chato.