資源描述:
《數(shù)據(jù)庫(kù)分頁(yè)sql語句》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、數(shù)據(jù)庫(kù)分頁(yè)SQL語句博客分類:·數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)分頁(yè)語句???SQLServer---------------------------------------------------------------------------------從數(shù)據(jù)庫(kù)表中的第M條記錄開始取N條記錄,利用Top關(guān)鍵字:注意如果Select語句中既有top,又有orderby,則是從排序好的結(jié)果集中選擇:?SELECT*??FROM?(SELECTTopN*????????FROM???(SELECTTop(M+N-1)*FROM表名
2、稱Orderby主鍵desc)t1)t2?????????????Orderby主鍵asc??例如從表Sys_option(主鍵為sys_id)中從10條記錄還是檢索20條記錄,語句如下:????SELECT*??????FROM(SELECTTOP20*??????????????????????????FROM(SELECTTOP29*FROMSys_optionorderbysys_iddesc)t1)t2??????????Orderbysys_idasc??Oralce數(shù)據(jù)庫(kù)------------
3、--------------------------------------------------------------------從數(shù)據(jù)庫(kù)表中第M條記錄開始檢索N條記錄????SELECT*??????????FROM(SELECTROWNUMr,t1.*From表名稱t1whererownum=M????例如從表Sys_option(主鍵為sys_id)中從10條記錄還是檢索20條記錄,語句如下:?????SELECT*??????????FROM
4、(SELECTROWNUMR,t1.*FromSys_optionwhererownum<30)t2???????????Wheret2.R>=10??如果你對(duì)Oracle數(shù)據(jù)庫(kù)分頁(yè)不是很熟悉的話,本頁(yè)后面有專門對(duì)Oracle分頁(yè)技術(shù)的講解。????Mysql數(shù)據(jù)庫(kù)---------------------------------------------------------------------------------------------????Mysql數(shù)據(jù)庫(kù)最簡(jiǎn)單,是利用mysql的LIMIT函
5、數(shù),LIMIT[offset,]rows從數(shù)據(jù)庫(kù)表中M條記錄開始檢索N條記錄的語句為:??????????SELECT*FROM表名稱LIMITM,N????????????例如從表Sys_option(主鍵為sys_id)中從10條記錄還是檢索20條記錄,語句如下:???????????select*fromsys_optionlimit10,20*********************************************************************************
6、**********************************??樓主問的是mysql下的吧"QUERY_SQLlimit?,?"?QUERY_SQL就是查詢語句,比如selectsno,snamefromstudentlimit1,15;?使用limit關(guān)鍵字,第一個(gè)"?"是起始行號(hào),?第二個(gè)"?"是返回條目數(shù)=====================================================另外提供給LZ其他數(shù)據(jù)庫(kù)的分頁(yè)語句Oracle?SELECT*FROM?(SELECTA
7、.*,ROWNUMRN??FROM??(QUERY_SQL)A??WHEREROWNUM?<=?)WHERERN>=??結(jié)合rownum關(guān)鍵字,利用嵌套三層select?語句實(shí)現(xiàn)。第一個(gè)"?"表示終止行號(hào),?第二個(gè)"?"表示其實(shí)行號(hào)==============================================?SqlServer?尚無通用語句?可使用topn來返回前n條記錄或使用存儲(chǔ)過程================================================?DB2?假設(shè)
8、查詢語句:selectt1.*fromt1order?byt1.id;分頁(yè)語句可為:?"select*from(selectrownumber()over?(orderbyt1.id)asrow_,t1.*fromt1?orderbyt1.id)astemp_whererow_?between?+1and?"??返回兩個(gè)"?"之間的記錄================================