我有一個查詢,我想闖入大小爲200的「塊」,並返回每個「塊」的開始ID和結束ID。Sql範圍組開始和結束編號
例子:
select t.id
from t
where t.x = y --this predicate will cause the ids to not be sequential
如果例子是,我試圖闖入「塊」我願意返回查詢:
(第1號,第200號),(第201 ID,第400個ID)...(最終範圍ID的開始,範圍ID的結尾)
編輯:對於最終範圍,如果它不是完整的200行,它應該仍然在查詢中提供最終的ID。
有沒有辦法只用SQL來做到這一點,還是我不得不求助於類似於分頁實現的應用程序處理和/或多個查詢?
如果有一種方法可以在SQL中執行此操作,請提供一個示例。
[OFFSET ... FETCH ...](HTTP:// WWW .postgresql.org/docs/current/static/sql-select.html) – lad2025
@ lad2025我從來沒有使用這些關鍵字。謝謝我會看看我能想出什麼,如果仍有問題,請更新我的問題。 – rocktheartsm4l
我還不清楚你是否想要一個數字列表'begin;結束;存在;結尾;'或成對'(開始,結束)'或範圍內'ids'的列表'(開始,結束)' –