1

以下のスクロール カーソルの例をhttp://www.sqlite.org/cvstrac/wiki?p=ScrollingCursorから実装しました。

前方にスクロールするには:

SELECT title FROM tracks
WHERE singer='Madonna'
AND title>:lasttitle
ORDER BY title
LIMIT 5;

後方にスクロールするには:

SELECT title FROM tracks
WHERE singer='Madonna'
AND title<:firsttitle
ORDER BY title DESC
LIMIT 5;

それは機能しますが、2番目のクエリのように逆方向のページネーションを行う方法があるかどうか疑問に思っていました。現在、順序が逆に表示されているため、ASC で結果を表示するだけです。それとも、そのクエリを使用して結果を取得し、アプリ コードで結果配列を好きなように並べ替えることが問題ですか?

ありがとう!!

4

1 に答える 1

1

逆方向にページングすると、ページの最後からレコードが取得されます。

順番どおりに並べ替えられたレコードを本当に取得したい場合は、別のクエリで再度並べ替えることができます。

SELECT *
FROM (SELECT title
      FROM tracks
      WHERE singer = 'Madonna'
        AND title < :firsttitle
      ORDER BY title DESC
      LIMIT 5)
ORDER BY title
于 2013-09-17T06:58:12.160 に答える