MySQL limit range

后端 未结 5 1383
无人及你
无人及你 2020-12-05 18:32
SELECT name FROM mydb ORDER BY score DESC LIMIT 10;

The query above will return the first 10 ranks.

How to modify the LIMIT, o

相关标签:
5条回答
  • 2020-12-05 18:47
    SET @rank = 0;
    SELECT rank, name, score
    FROM (
        SELECT @rank := @rank +1 AS rank, name, score
        FROM mydb
        ORDER BY score DESC 
        LIMIT 100 
    ) X
    WHERE rank >= 10;
    
    0 讨论(0)
  • 2020-12-05 18:50

    you may use offset

    SELECT name FROM mydb ORDER BY score DESC LIMIT 10 OFFSET 10
    

    here, offset indicates that from where next 10 data will show.

    you may also use below :

    SELECT name FROM mydb ORDER BY score DESC LIMIT 10, 10
    
    0 讨论(0)
  • 2020-12-05 18:58

    You should use:

    SELECT name FROM mydb ORDER BY score DESC LIMIT 10,10;
    

    http://dev.mysql.com/doc/refman/5.5/en/select.html

    The two arguments 10,10 are (Offset, Limit) so this will retrieve rows 11-20.
    9,11 Would be required to grab the 10th - 20th rank.

    0 讨论(0)
  • 2020-12-05 19:05

    Limit has also an offset parameter

    SELECT name FROM mydb ORDER BY score DESC LIMIT 10,10
    
    0 讨论(0)
  • 2020-12-05 19:12

    Use offset to clarify the query.

    SELECT name FROM mydb ORDER BY score DESC LIMIT 10 OFFSET 10
    
    0 讨论(0)
提交回复
热议问题