Sybase

接下來 10% 的行

  • April 6, 2020

我知道 TOP 可以返回前 10% 的行結果,但是我將如何獲得下一個 10%?我正在嘗試分解由於記憶體不足(java.lang.OutOfMemoryError)而崩潰的查詢,並希望返回前 10% 的結果,然後對其進行編輯,使其返回下一個 10%,依此類推。我正在使用 SQL Anywhere 12。

一個想法…

如果第一批行按列排序,則在第二個查詢中使用最大/最後一行作為附加的“where”子句。

例如,假設第一個查詢拉回了前 100 個 ID(按 ID 排序): ID = 1..100

對於第二個查詢,您可以添加一個額外的“where”子句來(有效地)跳過前 100 個 ID,例如:select top 100 ID from ... where ... and ID >100 ... order by ID.

引用自:https://dba.stackexchange.com/questions/264429