通過 OFFSET 分頁

向 UNION 新增 LIMIT 時,這是要使用的模式:

( SELECT ... ORDER BY x  LIMIT 10 )
UNION
( SELECT ... ORDER BY x  LIMIT 10 )
ORDER BY x  LIMIT 10

由於你無法預測 10 將來自哪個 SELECT,你需要從每個中獲得 10,然後進一步減少列表,重複 ORDER BYLIMIT

對於 10 個專案的第 4 頁,需要此模式:

( SELECT ... ORDER BY x  LIMIT 40 )
UNION
( SELECT ... ORDER BY x  LIMIT 40 )
ORDER BY x  LIMIT 30, 10

也就是說,在每個 SELECT 中收集 4 頁的價值,然後在 UNION 中進行 OFFSET