sql >> Databáze >  >> RDS >> Mysql

MySQL Rank v Highscore-Query

Cílem je zeptat se, „kolik hráčů má vyšší hodnocení než @this_user“:

select count(*) + 1 from 
(
    /* list of all users */
    SELECT SUM( p.points ) AS sum_points
    FROM user u
    LEFT JOIN points p ON p.user_id = u.id
    GROUP BY u.id        
) x
/* just count the ones with higher sum_points */
where sum_points > (select sum(points) from points where user_id = @this_user)

Upraveno aby výsledek byl založen na 1 namísto na 0



  1. ExecuteNonQuery vždy vrátí nulu. Mohu použít tuto hodnotu 0 do svého kódu pro ověření?

  2. Smyčka přes Array v PHP se vrátila z MySQL Query

  3. Jak získat rozdíl v letech ze dvou různých dat?

  4. Problém s nahráváním dat do databáze