質問があります
SELECT SQL_CALC_FOUND_ROWS a.memberid, a.category_id, a.content, a.count_cid, a.importance
FROM tb_profilingdata a, tb_member b
WHERE a.memberid = b.memberid AND a.category_id IN ($catstr) AND a.memberid NOT IN ( $seen_txt) AND b.gender != '$gender'
ORDER BY a.memberid, a.category_id LIMIT $offset, 4500
テーブルが非常に大きいため、クエリ結果を特定の制限に制限したいと考えています。また、クエリを実行するたびにランダムな値のセットを取得できるように、動的オフセットも選択します。
これまで、PHP を使用して、テーブル内の行の総数に基づいてランダム オフセットを計算していました。ただし、オフセット値がクエリによって返される行の総数よりも大きい場合、結果は空になります。
テーブル全体をロードする必要がなく、ランダムな値を取得できるように適切なランダムオフセットを設定する方法はありますか?