欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
實(shí)現千萬(wàn)級數據分頁(yè)的存儲過(guò)程!《
續》

                    鐵 拳


/*
  此存儲過(guò)程的思路是將關(guān)鍵字段與無(wú)重復索引字段結合起來(lái)進(jìn)行排序,如果關(guān)鍵字
  段有重復,可再按索引字段進(jìn)行排序從而進(jìn)一步分頁(yè),需強調的是
@fldIndex 字
  段類(lèi)型必須為可參與數學(xué)計算的數據類(lèi)型,即使 @fldIndex 字段有重復也可使
  用,只要 @flName 字段和 @fldIndex 不同時(shí)具有重復數據即可正常使用。例
  如下表所示:

 IDCustIDBirthday

131982-03-10

231979-10-04

341980-09-02

  如果按 ID 排序,則可以使用 ID 作為 @fldName 并且省略 @fldIndex 參數,
  如果按 CustID 排序則將 CustID 作為 @fldName 并以 ID 作為 @fldIndex
  字段,如果同時(shí)出現 ID 與 CustID 重復的情況下就不適合使用這種參數,例如:

 
IDCustIDBirthday

131982-03-10

131979-10-04

341980-09-02

  只要 @fldIndex 和 @fldName 字段不同時(shí)出現重復就可以了,如果數據中具有
  唯一索引的主鍵字段,則應使用該字段作為 @fldIndex 參數,無(wú)需其它條件。


  SQL Server 查詢(xún)分析器中調用方法如下:
  exec GetRecordFromPage ‘TableName‘, ‘SortField‘, ‘IndexField‘, 10, 5, 0,
                         ‘IndexField > 10 AND IndexField <> 100‘

  更多參考請見(jiàn):
    http://blog.csdn.net/sun_jianhua/archive/2004/07/04/33574.aspx

*/


/*

  函數名稱(chēng): GetRecordFromPage
  函數功能: 獲取指定頁(yè)的數據
  參數說(shuō)明: @tblName      包含數據的表名
           @fldName      關(guān)鍵字段名
           @fldIndex     無(wú)重復索引字段
           @PageSize     每頁(yè)記錄數
           @PageIndex    要獲取的頁(yè)碼
           @OrderType    排序類(lèi)型, 0 - 升序, 1 - 降序
           @strWhere     查詢(xún)條件 (注意: 不要加 where)
  作  者: 鐵拳
  郵  箱: sunjianhua_kki@sina.com
  創(chuàng )建時(shí)間: 2004-07-04
  修改時(shí)間: 2005-09-21
*/
CREATE PROCEDURE GetRecordFromPage
    @tblName      varchar(255),       -- 表名
    @fldName      varchar(255),       -- 字段名
    @fldIndex     varchar(255)=‘‘,    -- 無(wú)重復索引字段
    @PageSize     int = 10,           -- 頁(yè)尺寸
    @PageIndex    int = 1,            -- 頁(yè)碼
    @OrderType    bit = 0,            -- 設置排序類(lèi)型, 非 0 值則降序
    @strWhere     varchar(2000) = ‘‘  -- 查詢(xún)條件 (注意: 不要加 where)
AS

declare @strSQL   varchar(6000)       -- 主語(yǔ)句
declare @strTmp   varchar(1000)       -- 臨時(shí)變量
declare @strOrder varchar(500)        -- 排序類(lèi)型
declare @strField varchar(1000)       -- 用來(lái)聯(lián)合的字段

if @PageIndex < 1
    return

set @strField = ‘[‘ + @fldName + ‘]‘

-- 計算后的數據精確到小數點(diǎn)后 33 位
if @fldIndex != ‘‘

    set @strField = ‘ convert(numeric(38,33), [‘ + @fldName
        + ‘]) + convert(numeric(38,33), [‘ + @fldIndex
        + ‘] / 10000000000000000000000000000) ‘


if @OrderType != 0
begin
    set @strTmp = ‘<(select min‘
    set @strOrder = ‘ order by ‘ + @strField + ‘ desc‘
end
else
begin
    set @strTmp = ‘>(select max‘
    set @strOrder = ‘ order by ‘ + @strField + ‘ asc‘
end

set @strSQL = ‘select top ‘ + str(@PageSize) + ‘ * from [‘
    + @tblName + ‘] where ‘ + @strField + @strTmp
    + ‘(tmpIndex) from (select top ‘ + str((@PageIndex-1)*@PageSize) + @strField
    + ‘ tmpIndex from [‘ + @tblName + ‘]‘ + @strOrder + ‘) as tblTmp)‘
    + @strOrder

if @strWhere != ‘‘
    set @strSQL = ‘select top ‘ + str(@PageSize) + ‘ * from [‘
        + @tblName + ‘] where ‘ + @strField + @strTmp
        + ‘(tmpIndex) from (select top ‘ + str((@PageIndex-1)*@PageSize) + @strField
        + ‘ tmpIndex from [‘ + @tblName + ‘] where ‘ + @strWhere + ‘ ‘
        + @strOrder + ‘) as tblTmp) and ‘ + @strWhere + ‘ ‘ + @strOrder

if @PageIndex = 1
begin
    set @strTmp = ‘‘
    if @strWhere != ‘‘
        set @strTmp = ‘ where (‘ + @strWhere + ‘)‘

    set @strSQL = ‘select top ‘ + str(@PageSize) + ‘ * from [‘
        + @tblName + ‘]‘ + @strTmp + ‘ ‘ + @strOrder
end

exec (@strSQL)
GO
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
[百萬(wàn)級]通用分頁(yè)存儲過(guò)程.[千萬(wàn)級]實(shí)現千萬(wàn)級數據的分頁(yè)顯示! - SQL Server - 數據庫開(kāi)發(fā) - 大家論壇 - Powered by Discuz!
實(shí)現千萬(wàn)級數據的分頁(yè)顯示!
sql分頁(yè)存儲過(guò)程
cxGrid分頁(yè)問(wèn)題
sql分頁(yè)
動(dòng)軟使用心得
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久