api/ajaxのページ番号を指定したい場合は、 ページ1を使用する場合は2ページをタイプしてください。特定のIDのインデックス/オフセットベースを見つける
だから私がやってどのようにInstagramのAPIを参照して、以下の
最初の要求しようとした:最初の行のオフセットのパラメータを読ん
使用クエリ1
はゼロであり、次の
"pagination": {
"prev_end_id": ..,
"count": ...
}
を要求するAjaxのため
pagination
データを返します次
要求:
使用クエリ2
id
またはprice_number
によって順序が0である場合を返信します。prev_end_id
またはprev_end_price
を返信します。desc
またはasc
を確認し、小さいか大きいかを選択してください。
name
または他のタイプの列で注文する場合は、どうすればよいですか?
私は正しいことをしています、これを解決する良い方法はありますか?
要求は次の、
は、最初の要求と同じ操作を行い、IDにオフセットベースを見つけたとき?私はちょうどend_id
、
を返すどの列で順番を無視すべきですか
はどのようにIDのオフセットベースを見つけるのですか?
すべての行とループ行を選択すると、特定のidインデックスが見つかりますか? OFFSET
は、パフォーマンスの問題であり、新しいデータが同時に添加されている場合(あなたが観察しているように)奇妙な結果につながる可能性があるため、
1
SELECT
p.*
FROM product p
ORDER BY p.id desc NULLS LAST OFFSET $1 LIMIT $2
2
SELECT
p.*
FROM product p
WHERE p.id < $1
ORDER BY p.id desc NULLS LAST LIMIT $2
1
SELECT
p.*
FROM product p
ORDER BY p.name desc NULLS LAST OFFSET $1 LIMIT $2
2
SELECT
p.*
FROM product p
AND p.price_number < $1
ORDER BY p.name desc NULLS LAST LIMIT $2
CREATE TABLE IF NOT EXISTS "product"(
"id" SERIAL NOT NULL,
"name" varchar DEFAULT NULL,
"name_slug" varchar DEFAULT NULL,
"price_number" numeric DEFAULT NULL,
PRIMARY KEY ("id")
);
返信いただきありがとうございます。これは私の問題例と同じですか?私の問題は、列のデータ型が整数ではない場合、それがどのようにsort_key
user1775888
はい、私はあなたの質問でこの可能性を考慮した印象を受けましたが、あなたの例は読みにくいので、明示すること。文字列は問題ありません。メソッドは比較可能なデータ型で動作し、文字列は確かに動作します。 –
ありがとう、私はこれを試してみましょう! – user1775888