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

常見數據庫分頁SQL語句

系統 1795 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條評論
主站蜘蛛池模板: 永登县| 通城县| 华安县| 剑河县| 阿拉善左旗| 南开区| 木兰县| 航空| 土默特左旗| 肥东县| 北宁市| 邢台县| 常德市| 东阿县| 平定县| 石柱| 偃师市| 香港 | 天门市| 博乐市| 湾仔区| 竹溪县| 额尔古纳市| 云阳县| 平凉市| 讷河市| 修武县| 钟祥市| 卢氏县| 西林县| 肃南| 通榆县| 焉耆| 安义县| 禄丰县| 榕江县| 莱阳市| 浦江县| 方城县| 朝阳市| 阜新|