以下の結果セットでは、2 人の一意のユーザー (id) が存在し、そのようなユーザーがクエリからさらに出てくる可能性があります。
マルチ結合クエリは次のとおりです。
select
id, name, col1Code, col2Code, col2Value
from
users_table UT
join
col1_table C1T on UT.id = C1T.user_ID_FK
join
col2_table C2T on UT.id = C2T.user_ID_FK
order by
UT.id
limit 10
このクエリから、そのようなユーザーが 50 人いるとします。ページネーションの目的で 10 の制限を適用すると、10 人のユーザーを取得することはできませんが、最初の 10 行のみを取得し、1 人または 2 人のユーザー データしか取得できません。
Q1: 特定の列に基づいて制限を設定するにはどうすればよいですか?
Q2: SQL limit 句を使用することは、ページネーションの正しいアプローチであり、エンド ユーザーの応答時間を改善することにもなりますか? そうでない場合、このシナリオで他に何が使用できますか?