包括了: 分頁 和 排序
use [databasename]
goset ansi_nulls on
goset quoted_identifier on
gocreate procedure [dbo].[procedurename]
@srctablename nvarchar(50), --檢視或表名
@condition varchar(1000), --查詢條件
@pagesize int = 10, --每頁長度(1~n)
@pageindex int = 1, --頁碼(1~n)
@orderby nvarchar(50), --排序方式,必須為查詢結果中的欄位名
@isdesc nvarchar(50) , --倒序還是正序
@hascount int = 0 --查詢結果是否帶總行數(0:不帶;1:帶)
asbegin
-- 引數容錯
if (@pageindex <= 0)
begin
set @pageindex = 1
enddeclare @select varchar(200)
if (@hascount = 0)
begin
set @select = ' select * ' ;
endelse if ( @hascount = 1 )
begin
set @select = ' select *,(select count(row_number) from searchresult as count) ';
enddeclare @sql varchar(6000)
set @sql=
' with searchresult as
(
select row_number() over (order by ' + @orderby + ' ' + @isdesc + ') as row_number , 其它所需欄位
from ' + @srctablename + ' ' + @condition +
' ) '
+ @select + ' from searchresult where row_number > ' + cast (@pagesize*(@pageindex-1) as varchar(50)) +
' and row_number <= ' + cast (@pagesize*(@pageindex) as varchar(50)) +
' order by ' + @orderby + ' ' + @isdesc
print @sql
exec(@sql)
endgo
乙個通用分頁類
1 功能 這個通用分頁類實現的功能是輸入頁數 第幾頁 和每頁的數目,就能獲得相應的資料。2 實現原理 分頁的實現通常分為兩種,一種是先把資料全查詢出來再分頁,一種是需要多少查詢多少,這裡使用第二種,所以就需要先實現在dao層能夠查詢一定範圍內的資料,這裡就實現通過id作為鍵值,查詢一定範圍內的資料的...
乙個通用的makefile(一)
最近在編寫android編譯系統時,需要遍歷每乙個目錄下每乙個資料夾下的makefile,網上的方法有些繁瑣 就直接貼上自己遍歷子目錄深度為1 for temporary 之後會繼續更新 下面是我的乙個簡單例項工程 資料夾目錄層次 獲取當前目錄下的子目錄名字 2 subdir shell ls l ...
乙個通用WebPart查詢列表
public partial class commonlist system.web.ui.usercontrol set 列表型別 public enum selecttype private selecttype selecttype selecttype.list personalizable...