91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Sqlserver的SQL語句實現分頁查詢

發布時間:2020-08-27 03:25:12 來源:網絡 閱讀:1399 作者:宇宙小元帥 欄目:關系型數據庫

在應用程序的開發中,如果數據庫中的數據量過于的龐大,則需要針對查詢數據做分頁處理,取出對應分頁中的數據,在Sqlserver分頁的語句寫法中,有兩種比較常用,一種是數據表中含有自增量Id的情況,可以根據Id的大小順序進行分頁,另一種是數據庫中不存在Int類型的Id的情況,此時就需要通過Row_Number函數來實現分頁。

(1)數據表中存在自增量Id的情況

假設我們查詢的表名稱為Student,包含的字段有:Id(Id號,自增變量)、Name(姓名)、BirthDay(出生日期)。按出生日期從早到晚排序,獲取排序后第31到60個學生的信息,語句可以使用Select Top的方式書寫。具體如下:

Select Top 30 * FROM Student Where Id Not In (Select Top 30 FROM Student Order By BirthDay) Order By BirthDay

如果是獲取第91到120排位的學生的話,則是下列語句。

Select Top 30 * FROM Student Where Id Not In (Select Top 90 FROM Student Order By BirthDay) Order By BirthDay

(2)數據表中不存在Id的情況

此種情況不可能再使用top來排序了,可使用row_Number進行排序后再篩選對應的值。

更改上述的Student表的結構為:StudentCode(文本類型,非數字)、Name(姓名)、BirthDay(出生日期)。按出生日期從早到晚排序,獲取排序后第31到60個學生的信息,此時的SQL語句為:

With tempTb AS
(
Select ROW_NUMBER() OVER(order by BirthDay ASC) AS RowNumber, FROM Student
)
Select
FROM tempTb Where RowNumber>30 AND RowNumber<=60

在臨時表tempTb中使用了ROW_NUMBER() OVER來獲取排序后的序號,Over里面為排序的規則。

備注:此文章最早發表于博主個人站,原文鏈接Sqlserver的SQL語句實現分頁查詢_IT技術小趣屋。

博主個人技術交流群:960640092,博主微信公眾號如下:
Sqlserver的SQL語句實現分頁查詢

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嘉禾县| 醴陵市| 库伦旗| 鞍山市| 东丰县| 汾西县| 新竹市| 潞西市| 济南市| 舞钢市| 阳原县| 英山县| 天镇县| 武鸣县| 银川市| 阿尔山市| 蓬溪县| 淮南市| 蓬安县| 青海省| 阳曲县| 长宁区| 当雄县| 丰都县| 曲靖市| 正定县| 广西| 门源| 抚顺市| 肃宁县| 山阴县| 德钦县| 商丘市| 准格尔旗| 搜索| 舟曲县| 千阳县| 罗甸县| 肥城市| 蓝田县| 将乐县|