ラジオの話題14:次のページへ進んだら、同じものが出た
今日の話題:①ページ番号がずれる → ②同じ時刻の注文が二つある → ③cursorなら完全に同じ一覧?。
気になったところから自由に。順番や時間は決めず、話しやすい話題だけ拾って構いません。
1. ページ番号がずれる
Section titled “1. ページ番号がずれる”話を広げるメモ
- 一覧の先頭に新しい注文が追加される。
- OFFSETで飛ばす位置はどう変わる?
小ネタ:OFFSET
指定数の行を飛ばしてから返す。前方への挿入・削除で位置が変わり得るし、深いページでは読み飛ばしの仕事も増える。
話の芯:ページの位置と、データの位置を分ける。
2. 同じ時刻の注文が二つある
Section titled “2. 同じ時刻の注文が二つある”話を広げるメモ
- created_atだけで次のページを決める?
- 順序を一意にするidを添える。
小ネタ:keyset pagination
最後に見た順序キーを境界にする方式。同値になる時刻だけでは境界が曖昧なので、一意なidなどを組み合わせる。並びに合うindexも検討する。
話の芯:次の場所を、安定して指せるか。
3. cursorなら完全に同じ一覧?
Section titled “3. cursorなら完全に同じ一覧?”話を広げるメモ
- 並びに使う値そのものが更新されたら?
- 一覧表示と、ある時点の全件出力は同じ要件?
小ネタ:cursorとsnapshot
cursorはページ境界を表すもので、全ページが同じ時点のsnapshotになる保証ではない。値の更新・削除、期限や検索条件の変更も契約に含める。
話の芯:移動方法と、一貫性の保証を混ぜない。
最後に一言、話すなら
Section titled “最後に一言、話すなら”「この話を、次に調査や設計をするときどう思い出したいか?」
このメモの材料
Section titled “このメモの材料”既存の学習振り返り教材から話題を選び、AIが小ネタとして再構成しました。説明・設計例と、本人の回答・実測の記録は別です。数値例は記載した仮定に基づくもので、本人の本番実績ではありません。
定義の詳細・前提・一次資料・対象版・確認日は元の教材を参照してください。今回の作成では新しい実験・学習評価は行っていません。