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

上記のクエリは最初の10ランクを返します。

を変更する方法LIMIT、または10番目のランクから20番目のランクをクエリする別の構文はありますか?

4

5 に答える 5

59

次を使用する必要があります。

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

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

2つの引数10、10は(オフセット、制限)であるため、行11〜20を取得します。
9,11 10〜20位を獲得するために必要になります。

于 2011-04-23T22:49:06.930 に答える
20

offsetクエリを明確にするために使用します。

SELECT name FROM mydb ORDER BY score DESC LIMIT 10 OFFSET 10
于 2011-04-23T23:25:40.437 に答える
5

Limitにはオフセットパラメータもあります

SELECT name FROM mydb ORDER BY score DESC LIMIT 10,10
于 2011-04-23T22:49:01.927 に答える
1
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;
于 2011-04-23T22:55:04.587 に答える
1

オフセットを使用できます

mydbから名前を選択するスコアで注文DESCLIMIT10 OFFSET 10

ここで、offsetは、次の10個のデータが表示される場所を示します。

以下を使用することもできます:

mydbORDERBYスコアから名前を選択DESCLIMIT10、10
于 2016-10-20T02:19:10.643 に答える