日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQLServer 实现rownum 的功能

發布時間:2025/7/14 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQLServer 实现rownum 的功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天想把最近做的項目的Oracle數據庫換成SqlServer數據庫,在轉換的過程中出現一點問題,就是輸出表的行號的時候出現了問題,在Oracle數據庫中,可以直接通過它的rownum來完成,語句如下

select rownum as num,t.occurrenceid,t.occurrencenum2,t.registerdate,b.occtype,t.AMOUNT,t.occresult,t.occtime,t.yr,t.zi,t.hao,t.step as step from occurrence t left join occ_type b?on t.occtypeid = b.occtypeid?where t.step<3 and t.Departmentid='101000' order by t.registerdate desc

但是放到SqlServer2005中就會出錯看,說是rownum有錯誤,最后才知道在SqlServer查詢行號不是那樣查的,是用SqlServer的row_number()來查詢的

select row_number() over(order by t.registerdate desc) as num,t.occurrenceid,t.occurrencenum2,t.registerdate,b.occtype,t.AMOUNT,t.occresult,t.occtime,t.yr,t.zi,t.hao,t.step as step from occurrence t left join occ_type b?on t.occtypeid = b.occtypeid?where t.step<3 and t.Departmentid='101000'

解釋:

1 此方法把括號里的查詢結果放到變量:temp 里面( 我也不確定是不是變量), 并用row_number() 函數進行一個行號跟蹤, 再用over 函數進行一個列的排序規則( 是這必須的), 并指定列名為'rownum'

2 緊接著在下面的語句可以對 'rownum' 進行一個指定行號的查詢

?

?

其實顯示序號除了采用sql處理外,我們也可以在程序代碼中實現,比如sql2000可能使用sql就不行了,那么怎么辦呢,可以看看下面的例子:

?

View Code ??????string?sql?=?"select?*?from?jh_job?where?jh_check?=?1?order?by?jh_pdate?desc";
????????DataTable?dt?
=?LYDAO.SqlText.ExecuteDataset(sql).Tables[0];

????????DataColumn?dc?
=?new?DataColumn("num");
????????dt.Columns.Add(dc);
????????
for?(int?i?=?0;?i?<?dt.Rows.Count;?i++)
????????{


????????????DataRow?row?
=?dt.NewRow();
????????????
int?j=i+1;
????????????
if?(i?<?10)
????????????{
??????????????
????????????dt.Rows[i][
"num"]=?"0"?+?j;
????????????}
????????????
else
????????????{
???????????????
????????????dt.Rows[i][
"num"]=j;
????????????}
????????}

?

然后綁定dt,在頁面中讀出num即可..?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的SQLServer 实现rownum 的功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。