看板 Database 關於我們 聯絡資訊
※ [本文轉錄自 java 看板 #1PZ3kmJM ] 作者: zelkova (*〞︶〝*) 看板: java 標題: [問題] LIMIT和ResultSet的問題 (Oracle DB) 時間: Thu Aug 10 18:55:40 2017 因為 OracleDB 沒有 LIMIT OFFSET 之類的用法, 假設我們要取第100000筆之後的300筆資料, 目前有看到有看到幾種模擬 LIMIT的方法,像是: 1. 子查詢先用 ROWNUM 將每筆編號直到100300號 然後父查詢再取出編號大於100000的 2. 第一次查詢用 ROWNUM 限制100300筆 第二次查詢用 ROWNUM 限制100000筆 將兩次查詢結果相減(MINUS) 之類的解法, (因為 DB 用 ORDER BY 會非常慢,類似解法省略) 看起來好像都沒有顯著差異,時間看起來沒比較快 我在想直接 executeQuery(sql) 將返回的 ResultSet rs.next() 重複100000次 然後取後面的300筆資料,這樣是不是可以接受? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.45.91 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1502362544.A.4D6.html ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: zelkova (218.161.45.91), 08/10/2017 18:56:32
criky: row number寫在欄位,加where條件>10000,這樣不知道會不會 08/10 21:21
criky: 快一點? 08/10 21:21
kobedisel: f大可以出來認識一下了 08/13 00:30