日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

常見數據庫分頁SQL語句

系統 1902 0
本文轉自: http://hi.baidu.com/wlw7758/blog/item/f6b0b9110d2a097aca80c4e4.html

我們在編寫MIS系統和Web應用程序等系統時,都涉及到與數據庫的交互,如果數據庫中數據量很大的話,一次檢索所有的記錄,會占用系統很大的資源,因此 我們常常采用,需要多少數據就只從數據庫中取多少條記錄,即采用分頁語句。根據自己使用過的內容,把常見數據庫Sql Server,Oracle和My sql的分頁語句,從數據庫表中的第M條數據開始取N條記錄的語句總結如下

SQL Server (先前有錯誤..修正之..)
??????? 從數據庫表中的第M條記錄開始取N條記錄,利用Top關鍵字:注意如果Select語句中既有top,又有order by,則是從排序好的結果集中選擇:
???????? SELECT Top N *

???????? FROM TestTable where id not in (SELECT Top (M - 1) id FROM TestTable Order by id)

#FROM TestTable where id not in (SELECT Top (M + N - 1) id FROM TestTable Order by id)

???????? ( 也可得到子查詢中的 max(id) ,然后主查詢 where 用 id > 子.id )
???????? 例如從表Sys_option(主鍵為sys_id)中從10條記錄開始檢索20條記錄,語句如下:
???????? SELECT Top 10 *
???????? FROM Sys_option where sys_id not in ( SELECT TOP 20 sys_id FROM Sys_option order by sys_id)


Oralce數據庫
從數據庫表中第M條記錄開始檢索N條記錄
???????? SELECT *
???????? FROM (SELECT ROWNUM r,t1.* From 表名稱 t1 where rownum < M + N) t2
???????? where t2.r >= M
???????? 例如從表Sys_option(主鍵為sys_id)中從10條記錄還是檢索20條記錄,語句如下:
??????? SELECT *
???????? FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2
????????? Where t2.R >= 10

My sql數據庫
My sql數據庫最簡單,是利用mysql的LIMIT函數,LIMIT [offset,] rows從數據庫表中M條記錄開始檢索N條記錄的語句為:
???????? SELECT * FROM 表名稱 LIMIT M,N

????????? 例如從表Sys_option(主鍵為sys_id)中從10條記錄還是檢索20條記錄,語句如下:
???????? select * from sys_option limit 10,20

常見數據庫分頁SQL語句


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 惠水县| 田阳县| 岳普湖县| 淮南市| 得荣县| 荥经县| 赫章县| 盖州市| 辛集市| 邵武市| 锡林郭勒盟| 霍邱县| 阜新市| 南靖县| 伊金霍洛旗| 尤溪县| 巨鹿县| 玉林市| 伽师县| 姜堰市| 中卫市| 明光市| 武城县| 山阳县| 顺昌县| 高安市| 龙海市| 信宜市| 哈巴河县| 兴安盟| 阿巴嘎旗| 茶陵县| 惠水县| 新龙县| 渭源县| 水城县| 正蓝旗| 青河县| 买车| 上思县| 伊吾县|