sql >> Database teknologi >  >> RDS >> Mysql

MySQL - Sådan laver du en Oracle RANK() OVER(ORDER BY score DESC)

Tilføj en anden variabel:

SET @prev_value = NULL;
SET @rank_count = 0;
SET @rank_increasing = 0;
SELECT score
     , @rank_increasing := @rank__increasing + 1 AS row_num
     , CASE
       WHEN @prev_value = score 
          THEN @rank_count
       WHEN @prev_value := score 
          THEN @rank_count := @rank_increasing
       END AS rank
  FROM ...


  1. Hvilken størrelse bruger du til varchar(MAX) i din parametererklæring?

  2. MySQL datoformat

  3. Hvordan opretter man en forespørgsel med to gange forbindelse til en tabel i Laravel 5.3?

  4. Del 1:Billedklassificering med MariaDB Server og TensorFlow – en oversigt