mysql和oracle獲取第3,4條數據

 項目中有個功能需要取4條數據,每2條取一次,頁面會傳過來一個參數,比如4,就是就取第3條和第4條數據,項目要兼容mysql和oracle,mysql經常用limit,oracle通常用rownum

mysql取第3和4條記錄sql實例,limit 代表從幾開始取幾個,下面sql從2開始,取2條數據,不包含2,從3開始,因此取的結果是3,4條記錄:

select t.C_ID,t.C_PATH,t.C_REAL_PATH,t.C_TEXT from tbl_catalog t where t.c_parent_id=83 order by t.c_sortno asc limit 2,2

oracle用rownum就顯得複雜一些,如果像mysql那樣直接用,很多情況下是查不到數據的,實例:

select *
  from (select a.*, rownum row_num
          from (select t.C_ID, t.C_PATH, t.C_REAL_PATH, t.C_TEXT
                  from tbl_catalog t
                 where t.c_parent_id = 83
                 order by t.c_sortno asc) a) b
 where b.row_num > 2
   and b.row_num <= 4;


發佈了32 篇原創文章 · 獲贊 32 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章