數據庫分頁

在數據庫裏進行分頁處理

 

最近沒事試着寫一些簡單的存儲過程,因爲之前不多用到或者不多本身寫存儲過程。因此歷盡各類艱難,讓本身也備受打擊。html

這是我寫的兩種排序,一種是使用 not in sql

  NOT IN

另外一種使用的是row_number,數據庫

  ROW_NUMBER

說一下我在寫的時候進入的一個誤區我在使用row_number的時候最後須要拼sql語句剛開始在行號的比較的時候我是這樣寫的post

url

WHERE a> '''+@startnum+''' AND a <'''@endnum+''''spa

code

而後在創建存儲過程的時候沒有報錯,但在執行存儲過程的時候開始出錯。。我剛開始覺得是個人‘號的不對,而後嘗試了各類放置位置,到最後我翻了之前數據庫裏的存儲過程,htm

才明白本身把這裏當成了像VS同樣的string字符串的拼接,可是@參數是一個int類型,兩種不一樣的類型是拼不到一塊的(不包括能夠隱式轉換的類型)。後來使用了convert()方法blog

將參數轉化爲varchar格式再拼接進去就行了。排序

還有一點就是row_number與rank 的不一樣,兩個雖然均可以用在排序裏,可是row_number 只僅僅是一行行數據的排列,不涉及相同排序的依據,每一行數據返回不一樣的bigint

值。而rank倒是相同的排序依據回返回相同的bigint值。詳情請參閱http://bear-study-hard.cnblogs.com/archive/2006/02/09/327723.html

相關文章
相關標籤/搜索