0

特定の要素 ID の後にフィールドで並べ替えるクエリを実行する方法はありますか。最後に返された要素に基づいてページネーションを実装しようとしていますが、要素をプロパティに並べ替え、前のページの最後の要素に基づいて次のページを返すことができるようにしたいと考えています。たとえば、ユーザーは、コストでソートされた id = 10 の要素の後に 25 要素を要求する場合があります。

あなたが持っていると想像してください:

ID | 名前 | 価格

1 | 魚 | 魚 | 5

2 | ハンバーガー | 2

3 | 野菜 | 6

価格でソートされた id=2 の後に取得したい場合は、それを返す必要があります

2 | ハンバーガー | 2

1 | 魚 | 魚 | 5

3 | 野菜 | 6

価格でソートされた id=1 の後に取得したい場合は、それを返す必要があります

1 | 魚 | 魚 | 5

3 | 野菜 | 6

4

1 に答える 1

0

できるよ:

SELECT * 
FROM YOURTABLE
WHERE id >= 10
ORDER BY cost ASC
LIMIT 25;

編集:

新しい情報によると、次の方法でそれを行うことができます。

SELECT * 
FROM YOURTABLE
WHERE price >= (SELECT price from Table1 WHERE id = 2)
ORDER BY price ASC
LIMIT 25;

sql fiddle demo

于 2013-10-02T18:18:55.007 に答える